如何基于一个xcode项目构build精简版和完整版iPhone应用程序?

我不想维护两套代码。 我只需要限制Lite版本中的一些function,并在其上添加一些广告。

怎么做?

创build多个目标。

您可以通过右键单击目标并select“获取信息”来更改构buildconfiguration。 从那里,你可以做一些事情,比如改变它正在查看的Info.plist文件(比如为名称添加“Lite”并更改图标/加载图像),并设置编译器标记,以便在#ifdef中放置。

如果有很多文件只适用于完整版本,那么您可以右键单击它们,并从精简版目标中删除它们以制作较小的应用程序。

我已经尝试了各种替代方法,比如多种configuration,并且我不断回到多个目标。 我通常至less有三个定义 – 发展,特设和App Store,每个都有自己的特定设置。

复制现有的目标到Xcode项目中。 在新目标中定义一个macros(在构build设置中的“预处理器macros”下),像“macroIsFreeVersion”

现在你可以做到这一点:

 #ifdef macroIsFreeVersion // code that will only execute in the free version here #endif 

和这个:

 #ifndef macroIsFreeVersion // code for only the paid version goes here #endif 

您需要对捆绑ID,供应configuration文件等进行其他更改。您所做的所有操作都将付费版本放入商店。