在Xcode中创build两个iOS应用程序
使用Xcode(在iOS上开发)我想创build第二个项目,它与第一个项目相同,但是一些类是不同的。
确切地说,我正在创build一个iPhone应用程序,我想提供一个免费版本和一个高级版本。 实际上,这些项目的代码是相同的,但是会改变一些类。
问题是我不想支持两个项目。 如果我修改一个类,那么我必须修改另一个项目上的相同更改。 这是非常多余的。
此外,该项目被推送到一个远程的GIT仓库。
最后一个注意事项是,iOS应用程序使用与项目关联的ID进行识别。
那么,我需要两个不同的项目?
在Xcode中创build两个iOS应用程序项目的最佳解决scheme是共享这些类,但更改两个三个类?
谢谢
我想提供免费版本和高级版本。
在这种情况下,您不需要在两个项目中创build两个应用程序:您所需要的只是您的高级版本的第二个目标 。 这里是一个链接,介绍如何在Xcode中创build和pipe理多个目标 。
这个过程归结为添加一个目标到项目中,为它定义一个单独的属性plist,可选地为条件编译设置一个预处理器符号,并将该符号用于免费版本中不需要的#ifdef
部分。
pipe理免费与付费产品的另一种常见方法是免费提供单一版本,并让用户通过应用程序内购买将其升级为付费版本。
你只需要创build两个目标。 所以你只会修改一个代码库,完美!
本教程将引导您(甚至使用Lite /付费版本,例如)。
-
重复付费版本的目标,并命名为免费版本
-
在付费目标中定义macros名
PaidApp=1
,然后把这行代码放在applicationDidfinishLaunching开始。#ifdef PaidApp [[NSUserDefaults standardUserDefaults] setInteger:1 forKey:@"adDisabled"]; #endif
-
当免费应用运行目标时,如果某人购买了付费应用function,则将@“adDisabled”的值设置为1(默认值@“adDisabled”将为0)