代码之家  ›  专栏  ›  技术社区  ›  Brad Parks

我如何管理构建iPhone应用程序的Lite版和付费版?

  •  63
  • Brad Parks  · 技术社区  · 17 年前

    我开始想我要考虑建立一个 关于这一过程,我略作介绍,即:

    http://developer.apple.com/tools/XCode/XCodeprojects.html

    http://www.pacificspirit.com/blog/2009/01/27/building_for_multiple_iphone_targets_in_xcode

    我在说什么 我的应用程序的不同版本中包括哪些文件 不断修改和增强我的付费版本。

    7 回复  |  直到 11 年前
        1
  •  83
  •   Rog    10 年前

    in app upgrades . 它的代码稍微多一些,但它是一个单一的发货,您的转换率可能会更好。

    Xcode很好地支持多个目标。

    通过右键单击“组和文件”列表标题(顶部左侧)并启用目标成员资格,您可以快速获得有关当前目标中包含和不包含的内容的视觉反馈。

    要在生成时指定特定类的行为方式,您可以做两件事-包括为各自的目标生成的两个版本的类,或者,您可以为预处理器设置生成时标志。在“组和文件”列表中选择目标,然后选择该目标的“获取信息”。转到“构建”选项卡并搜索“预处理”。您应该会看到一个名为“预处理器宏”的n项 LITE 添加到您的lite目标,并以相同的方式添加 PAID

    在源文件中,您可以在编译时确定要编译的版本 #ifdef LITE

    更进一步,您可以基于#ifdef LITE设置全局标志或AppDelegate成员变量,并在运行时更改LITE和付费应用的行为。但我不确定我是否看到了其中的价值。

        2
  •  24
  •   Paxic    17 年前

    作为开发人员,您希望编写尽可能少的代码(更少的bug,更少的时间)。随着构建版本的不同,您将不得不投入更多的工作和单独的测试。

    除非你正在制作一个昂贵的黑客工具,你可能会考虑保持差异尽可能简单-只是有一些隐藏的偏好或设置。这样,大多数检查和测试将在两个版本中执行相同的工作,很少有代码不同。关键的问题是不要让自己成为开发人员的负担。

        3
  •  7
  •   Brad Parks    14 年前

    “花园”的创建者在此详细介绍了创建精简版的各种方法的优缺点:

    http://gamesfromwithin.com/from-full-to-lite-in-under-an-hour

        4
  •  2
  •   InFreefall    16 年前

    在iPhone3.0中,您可以使用应用内购买,并允许其解锁全部功能,而无需制作多个应用。我也认为这会避免人们免费得到它,但我不确定这一点。

        5
  •  1
  •   Alex Wayne    17 年前

    我使用了git分支。我扩展了我的主应用程序,并做了一些调整来禁用一堆内容。现在我主要在master分支工作,当出现重大开发时,我会切换到lite并在最新版本中进行合并。效果很好。

        6
  •  0
  •   Himanshu padia Sachin Gurnani    11 年前

    更好的方法是只有一个项目,而是有多个目标——每个应用程序版本有一个目标。那么,目标是什么: Multiple Targets