文章目录
- 一、 添加configuration
- 二、 添加scheme
- 三、 设置scheme 和 configuration的对应关系
- 四 、 本地配置文件
- 五、 运行
前言
我们在开发中都要涉及到切换环境,很多小伙伴是通过宏定义的方式实现
切换环境的 , 这种方式不优雅,还可造成每次切换环境的编译速度慢的问题,
所以,我们这里实现切换scheme 的方式切换环境
一、 添加configuration
选中project ->info-Configuration,点击confutation 下面的添加
如图
在选项卡中选择Duplicate “Debug” Configuration 选项
给新添加的configuration 命名
我这里命名为KKK-F1
二、 添加scheme
点击现有scheme名称,展示sheme 操作 小面板, 选择New scheme,
如图:
弹出为scheme命名弹窗
为了方便,我这里和新添加的configuration命名一致,都使用了KKK-F1
三、 设置scheme 和 configuration的对应关系
选中我们要设置的scheme
选中之后,再点击scheme ,弹出小弹窗,我们点击Edit Scheme ,编辑scheme 和 configuration 的对应关系
分别设置run, test, profile, analyze ,archive 中的Build Configuration
这里将scheme KKK-F1的Build Configuration 都设置为 KKK-F1
四 、 本地配置文件
这里我们通过本地plist文件配置不同的环境域名
向工程里添加一个配置资源的文件夹
两个配置文件的内容如下
配置文件的实际位置 ,放在和工程同名的文件夹内
在copy bundle resources 中移除KKK-F1 环境的文件(项目中的没有移除)
设置编译脚本,在不同的configuration中使用不同的本地配置文件
在build phases 中点击 “+”
选择 new run script phase
设置脚本名称(自定义),并添加运脚本
我这里设置名称
Copy Configuration FIles
脚本
RESOURCE_PATH=${SRCROOT}/${PRODUCT_NAME}/Configuration/${CONFIGURATION}
BUILD_APP_DIR=${BUILT_PRODUCTS_DIR}/${PRODUCT_NAME}.app
echo "Copying all files under ${RESOURCE_PATH} to ${BUILD_APP_DIR}"
cp -v "${RESOURCE_PATH}/"* "${BUILD_APP_DIR}/"
五、 运行
以上,我们就达到了切换 scheme的方式切换环境的目的