iOS 管理项目-多Target

作者: 强子ly | 来源:发表于2017-05-24 21:14 被阅读233次

           需求:目前公司的两款产品,共用相同代码,只有AppIcon、LaunchImage等部分图片资源不同,每次打包都要手动修改图片和displayName等,目前需要整合打包流程,实现自动替换资源,同时避免人工操作出现的bug。

           解决思路:使用Xcode不同的target来区分版本。

          第一步:新建target:

         (1)双指点击TARGETS--->Duplicate-->选择DuplicateOnly

            (2)创建成功后Xcode会复制原来项目target生成一个xxx copy对象(图片中Project copy),并生成一个xxxx copy-Info.plist文件(图片中的Project copy-Info.plist)。

            第二步:创建新项目文件,修改新生成的plist文件路径,注意新项目添加路径及target选择(如图)

            第三步:修改target、info.plist、ProductName、Bundle identifier、scheme名称及新项目的plist相对路径。

            (1)、target、info.plist、ProductName、Bundle identifier.

            (2)修改scheme

            (3)修改新项目plist文件相对路径

            (4)查看plist文件路径是否正确

            第四步:新建NewProjectAssets.xcassets文件夹,更换新项目启动图(AppIcon),桌面图标(AppIcon)。

            ⚠️NewProject需要将.xcassets在 Build Phases -->Copy Bundle Resources添加依赖关系。(注意两个项目以后添加文件的依赖关系,需同步修改)

            结果:无论打包还是运行都可以在这里选择。

    扩展:

    (1)可创建三个.xcassets文件,两个私有文件,一个基类,便于管理且减少冗余。

    (2)可以定义预编译宏,来区分两个版本的不同代码。

    相关文章

      网友评论

        本文标题:iOS 管理项目-多Target

        本文链接:https://www.haomeiwen.com/subject/fkjoxxtx.html