关于批量化生产 iOS 应用的一点想法

目标:通过代码,编译,打包生成 IPA 后,然后通过修改 IPA,再签名,打包生成更多的 IPA。

前提:iOS 应用程序是可配置的,不管是通过配置文件,还是暴露出来的 SDK(比如:以Lua 方式向外暴露)。

相关工具与资料:

https://code.google.com/p/iresign/

http://www.ketzler.de/2011/01/resign-an-iphone-app-insert-new-bundle-id-and-send-to-xcode-organizer-for-upload/

http://stackoverflow.com/questions/9708090/how-can-i-code-sign-an-ios-xarchive-so-a-client-can-resign-properly-using-pus

关于 SDK 设计的一点想法:

首先需要思考下:SDK 是程序向外暴露的功能,那 SDK 本身暴露的是什么?我觉得应该是程序的对象模型。

行业中有很多优秀的软件可以让我们参考,比如:Emacs。

实践中可以参考 Emacs:

1、定义出程序的对应模型与功能。

2、将模型的一部分或者功能的一部分通过 SDK 的方式暴露出去。比如:Lua

3、将打包好的 IPA 程序进行解压缩,修改、添加脚本,以便达到修改程序外观与功能的目的。

4、重新签名、打包(可以使用不同的证书)。

5、上传 AppStore。

方法应该比较简单,重点在于对象模型与SDK的设计,比如:沙箱的考虑等等。

另外,强烈推荐使用 Lua 作为 SDK。

=============================================================

修改(2012-06-11):

由于在生成 .app 时只是对代码进行签名,不对资源进行签名。

因此可以保留 .app ,修改其中的配置,然后再将 .app 签名,打包成 ipa。

原文地址:https://www.cnblogs.com/Proteas/p/2520006.html