首页 文章详情

iOS 创建多个 Target 实现多渠道打包或者环境区分

iOS开发 | 395 2021-06-22 04:45 0 0 0
UniSMS (合一短信)
👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇


作者丨骑马纵天下

来源丨掘金

原文链接:

https://juejin.cn/post/6910117697317502983



  • 需求:一套代码可以成多个App,其中图标、启动图、名称等不一样。或者一个项目区分不同环境,不同环境安装不同的依赖库或者访问不同的服务器,或者执行的代码逻辑不同等。


大致流程:


1. 创建Target或者说在当前项目target基础上复制新的target2. 修改Target、Scheme配置3. 配置Info.plist(如果只是环境区分不用修改)4. 宏定义(Preprocessor Macros)设置5. Assets.xcassets的设置(app图片、launch启动页)


1.  创建新的Target(快捷键 Command + D)



2.  复制后会在原来target基础上生成一个新的target,同时会生成一个新的plist文件。plist文件的位置是在项目的主目录下,如果觉得放着不合适可以挪到某个文件夹下然后在引入到项目中。



3.  修改target和Scheme名称。



4.  修改target引用的plist文件的路径。



5.  添加项目配置



6.  宏定义(Build Setting–>Preprocessor Macros)主要用于区分环境或者不同App显示的样式或者逻辑的不同。全局宏,在所有/整个工程的代码中都是有效的。有几个target设置几个宏定义,在代码中用来区分当前选中的target用来区分项目或者环境。



  • 根据不同的target宏来引入不同的头文件或者处理不同的逻辑



7.  新建对应target的资源文件。




  • 直接选择想要添加资源文件的target即可。新建好后直接在里面添加图标启动图等,就可以正常使用。



  • 初始资源文件选中的target修改为第一个。因为创建新的target后,初始资源文件会默认选中创建好的target,也就是创建一个target初始资源文件会选中一个可能导致设置在新的资源文件添加过图标等不能正确显示。



  • 图标显示正常



other: 如果只是区分环境可以按照下面的直接添加配置,设置区分环境的宏这样简单点。



-End-

最近有一些小伙伴,让我帮忙找一些 面试题 资料,于是我翻遍了收藏的 5T 资料后,汇总整理出来,可以说是程序员面试必备!所有资料都整理到网盘了,欢迎下载!

点击👆卡片,关注后回复【面试题】即可获取

在看点这里好文分享给更多人↓↓

good-icon 0
favorite-icon 0
收藏
回复数量: 0
    暂无评论~~
    Ctrl+Enter