【问题标题】:InApp Purchase ClarificationInApp 购买说明
【发布时间】:2012-03-23 12:40:43
【问题描述】:

我有一个应用程序,我想在应用商店有两个版本,一个是精简版,另一个是完整版。我希望免费提供精简版,并可选择使用 InApp 购买进行升级。完整版将有偿提供。

对于我的其他应用程序中的 InApp 购买,我使用 MKStoreKit 对我的非消耗性产品进行 InApp 购买(升级)。对于精简版,我可以接受这种方法。

我的问题是,对于将在 App Store 中付费获得的完整版本,我是否需要使用 MKStoreKit 之类的东西,或者我可以直接发布它并由 Apple 处理购买,因为他们知道下载成本?

谢谢

【问题讨论】:

    标签: iphone xcode ipad in-app-purchase mkstorekit


    【解决方案1】:

    如果不使用 MKStoreKit,你没有理由在完整版中包含它。

    不过,您可能希望从相同的代码库构建两个应用程序(这就是我为自己的应用程序所做的,就像您的应用程序一样有免费和付费版本),并让您的 XCode 项目构建两个目标,每个目标一个.但即使这样做,您也可以在完整版中排除 MKStoreKit,而仅在免费增值版中包含它。

    【讨论】:

    • 为了在代码中进行区分同时保持代码完全相同,您可以使用预处理器符号并仅在其中一个版本中定义它(例如 FREE_VERSION)。然后在您的代码中执行#if FREE_VERSION 并在其中粘贴您的应用内购买逻辑。
    • 是的,我也是这么想的。在 xCode 中,我如何有条件地包含存储和安全框架,或者它们会因为不需要而被从完整版本中删除?
    • 您可以更改每个目标的所有设置,因此您可以简单地在完整版本的设置中删除这两个框架(我认为它在构建阶段页面上)。再说一遍,把它们留在里面并没有害处(它只会让你的 app bundle 比它需要的更大)。
    【解决方案2】:

    只有在进行应用内购买时才需要 MKStoreKit。因此,对于付费版本的应用,您将不需要它。

    【讨论】:

    • 好的,谢谢!那么我是否需要将我的应用程序构建为两个不同的版本,或者我可以将精简版版本发布到应用程序商店并在代码中检测它是否是付费版本。还是我需要保留两个不同的代码集?
    • 我会将它构建为两个目标,作为同一个 Xcode 项目的一部分。您将能够分享有意义的代码。
    【解决方案3】:

    根据您的问题,您似乎认为可以进行应用内购买,从应用商店下载完整版本。这是不可能的。 您需要 2 个单独的版本和免费的版本以将其全部锁定,除非他们已通过应用内购买将其全部解锁。如果它在应用标题中有“免费”或“精简”,即使在解锁完整的东西后他们仍然会拥有这个,因为应用本身不会改变。

    【讨论】:

    • 不,可以理解。解释一下,我将有两个版本 Lite 和 Full,Lite 将使用 InApp Purchase 构建,Full 将在没有 InApp Purchase 的情况下构建并启用所有功能。两者都发布到 App Store。当用户下载 Lite(免费)时,他们可以随时通过 InApp Purchase 进行升级,从而解锁缺失的功能。当用户下载完整版时,他们得到了所有内容,并且没有 InApp 购买。
    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多