美文网首页
如何管理上百个渠道包?

如何管理上百个渠道包?

作者: 拿破轮胎 | 来源:发表于2017-07-26 11:08 被阅读18次

    手上有个项目要打一百多个渠道包,每个包的icon,启动图名字等都不一样。怎么破?

    Target的失败尝试

    最初,我采取了建target的办法处理。常规来说,这也是大家推荐的办法,但当建到30个Target后,Xcode操作变得越来越卡,并且每次添加一个新的类,都要勾选这几十个target确实很烦人,也容易遗漏,看来不是太好的方案~~

    思考

    一度陷入僵局后开始思考还有什么可以利用的。

    1.脚本?

    这时候没准大家想到了用脚本去控制打包。那调试的时候又不好针对指定渠道包测试,有bug难以处理最终等弊端。

    2.新建工程,把公用部分打成fremawork?

    这是个疯狂的想法,虽然解决了多target卡的问题,但规模庞大难以维护

    3.新建工程,把公用部分弄成子工程?

    和方法二一样···

    回归Xcode

    Xcode是一个很强大的工具,其中集成了很多可配置的元素。所以我相信利用Xcode自带的功能就能解决这个问题,所以开始想到了Xcode的配置文件.xcconfig文件

    xcconfig

    xcconfig是Xcode的一个工程配置文件,可以作为的一个补充配置Xcode,我们常用的Cocoapods就是用这东西来链接生成的静态库。大概长这样

    Xcode中在这里选择

    所以,我的思路是

    给每个渠道包新建一个xcconfig文件,用来管理APP名字,ShareSDK key等一些需要特殊处理的地方。 APPIcon和启动图的管理就在Xcode的BuildPhases里的添加RunScript,进行拷贝替换。

    最终就成了这样子

    每次想调试那个渠道的工程也简单,只要把

    Configurations里的debug项改成先要调试的config就行了

    打包时就直接用脚本,通过--config选项能够指定加载哪个渠道的配置,例如:

    xcodebuild -target "tuangouproject" -configuration Release -sdk iphoneos build -xcconfig "Build Config/$name.xcconfig" 1>/dev/null

    打包脚本无非就是遍历整个配置文件夹,挨个打包就行了,一百个渠道部刷刷刷就打完了,完全没压力

    整个世界清净··

    本帖只提供方案,并不是一个基础教程,所以xconfig的新建过程没详细写,如果你还不知道xcconfig怎么用,可以先参考这里:Using xcconfig files for your XCode Project

    相关文章

      网友评论

          本文标题:如何管理上百个渠道包?

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