引言:一些项目会涉及到多厂商,那么一个项目就需要配置多个Target,替换图标,开机画面,代码差异处理等问题,下面一个个解答如何处理.
1.多Targe的创建:
只需要复制原来的Target就行,具体如图:
复制Target后,Xcode默认会为你copy一个info.plist,为了以后维护方便,统一使用原来的info.plist
但问题随之而来,info中包含了一些差异化的部分,比如开机画面:
这时候就需要使用infoPlist.String文件了,这个文件使用key-value的方式来修改info.plist文件的,包括我们后面说到的本地化app名字.
2.infoPlist.String的创建和配置:
分别为不同的Target都创建一个叫:infoPlist.string的文件,放到不同的文件夹,并添加到Xcode中.
如何创建infoPlist,具体请看另一篇文章:ios app名称国际化
该文件是info.Plist的补充信息,可以手动在这里适配中英文,包括不同target的配置信息:
如:
app名字 "CFBundleDisplayName" = "你的target对应的app名字";
开机图片 "UILaunchStoryboardName" = "Launch ScreenNew(01).storyboard";
那如何知道我要改的字段是那个key值呢?
方法就是使用XCode的修改对比功能:
比如我们想找:Launch screen interface file base name这个对应的key是什么,那么为了方便查找,我们可以设置他的值为1111,在点击对比按钮,搜索就能找到我们想要的key:UILaunchStoryboardName
由于之前适配多厂商都是手动删除修改信息,导致重复的劳动,效率不高,而且还容易修改遗漏或错误,导致严重的问题.
最终是这样的:
那么多Target适配好了,又遇到每次发包都需要手动打包也很耗时,也存在重复的劳动,那么下期将讲解如何自动化打包多Target