我正在研究自动化构建过程的最佳方法。我有自己的想法(通过以前的非iOS项目的经验),但需要良好的论据支持和反对各种可能性。
目标:具有单个目标(想想白标)的单个xcode项目需要以1..N不同的风格(具体品牌)构建,并且用户交互最少,技术知识最少。对于AdHoc和/或AppStore。
基本上,这意味着指定每个构建;包含Icons + Splashscreen的文件夹,包含品牌特定资源的捆绑包(可能是?)Info.plist,指定appname,bundle-id等。
需要尊重或澄清的问题;
我的个人感觉:Hudson或CruiseControl + Xcode插件。
似乎有很多关于Xcode解决方案的文档,我已经在我工作的Flex项目中看到了这一点,几乎完全相同的白标/品牌要求。当然那是使用Ant脚本但没有任何行为配置值得尊重。这是我唯一不确定的地方......我怀疑它必须在某个地方进行硬编码,但这不是解决某些人的问题的答案。在手动构建时,希望能够通过GUI表单指定各种app-config设置(服务器URL,是支持Foo的功能,是显示的视图X等)。我不确定将它变成典型的Hudson或CC配置是多么容易?
因此,我们提出的一个建议是编写一个OSX应用程序来构建我们的客户。理论上,用于输入所有必要的元数据的非常干净的非技术UI应用程序设置和标有“Build”的大闪亮绿色按钮。但就我个人而言,我怀疑这种方法比传统的CI解决方案更灵活或更容易实现。
所以问题基本上是,什么是更可取的;基于经典服务器,版本控制集成,CI方法还是自定义OSX实用程序?
无论我们采用哪种方式,几乎可以肯定是要求在2到3天内完成并运行(绝对不到一周)。
答案 0 :(得分:1)
恕我直言,您可以使用不同的XCode目标解决所有问题。
每个目标都会共享代码,但它可以:
我希望这会有所帮助
答案 1 :(得分:0)
一个非常晚的回复,但我采取的方法是创建白标IPA,然后创建一个脚本: 1.解压缩(将.ipa文件扩展名更改为.zip)。 2.更改资产。 更新info.plist(使用Plistbuddy命令) 再次拉链。 辞职代码。
请参阅此脚本作为起点:https://gist.github.com/catmac/1682965
答案 2 :(得分:0)
很晚才回答。但我会使用不同的.xcconfig
文件和多个方案。方案名称可以是target/brand
的组合。