【问题标题】:iPhone: Setting up an app for use as an "In App Purchase"iPhone:设置应用程序以用作“应用程序内购买”
【发布时间】:2009-12-10 00:04:40
【问题描述】:

关于应用程序购买,我可以找到很多关于实际购买和与商店交互的所有技术细节(如何检索产品信息、验证收据等),但我似乎找不到信息关于准备实际“应用程序”或“组件”的指南或特殊说明,无论它们将被视为应用内购买。

例如,一旦一个组件被下载到一个应用程序中,它在应用程序的整体架构中存在于哪里?他们是如何结合起来的?他们怎么知道彼此。如果我有一个游戏,并且使用应用内购买,我允许用户下载新关卡,还可以下载可能影响任何内置或下载关卡的新游戏模式,我如何准备所有这些资产,以便他们整合了吗?

我本身并不是在寻找教程,但我很想知道是否有人有过 In App Purchases 的经验,或者知道除了 Apple 的 In App Purchase 编程指南之外的有用参考,该指南只涉及制作的细节实际的下载交易。

【问题讨论】:

    标签: iphone in-app-purchase


    【解决方案1】:

    您下载的东西并不是真正的“应用程序”,它们只是数据文件,就像您的应用程序可以下载的任何其他东西一样。

    有时,它们并非真的如此,它们只是有效的“开关”,即所有功能和数据都已经存在于您的代码中,但它只是受到一行代码的保护,例如

    if (user has purchased extra levels)
        add extra items to menu/list
    

    您不能下载新的可执行代码;我承认我不确定 Apple 在阻止您下载控制程序行为的脚本方面的工作有多谨慎,因为他们很难分辨出您的原始应用程序的内在特性。

    在我自己的程序中,我将控制逻辑和表格放入主应用程序中,并将大资源文件分离到单独的 ZIP 文件中。当用户购买附加包时,他们确实下载了图像的 ZIP 文件,这可以减小原始应用程序的大小,并且程序只使用文档目录中的这些图像,而不是像构建它们时那样使用应用程序包在。

    我正在使用 Urban Airship 应用内购买支持,它使您无需运行自己的服务器或了解 StoreKit 的大部分详细信息,而代价是您的收入的一部分。

    【讨论】:

    • 我想开发一个类似于 Ramp Champ 的模型。自最初发布以来,已经创建了一些额外的级别。每个动画都是独一无二的,让我相信每个动画都有新的可执行代码。但根据您所描述的,它们可能只是包含新的动画说明以及每个级别的新艺术作品。如果我确实想以应用内购买的形式发布全新的功能,您是否建议将新的可执行代码包括(并锁定)作为应用更新的一部分,然后在进行适当的应用内购买后解锁代码?
    • 对,我认为您要么必须在应用程序的 v1.0 中拥有所需的代码,要么另一种选择是当您提交应用程序的 v1.0.1 作为更新时,您可以提交向 Apple 提供额外的应用内购买项目,并告诉他们“请查看这些以及我的更新”。
    • 太好了,这都是很好的信息。感谢大卫为我揭开应用内购买的神秘面纱。
    • @DavidMaymudes 你能告诉我使用 Urbanairship 进行 IAP 的步骤吗?我试过使用它,两端一切正常,但我仍然收到这样的错误:paymentQueue:removedTransaction:("<0xf6bba00>
    【解决方案2】:

    您可以让关卡从一开始就在应用程序中,并在用户支付应用程序内关卡时让它们变得可用。这是迄今为止最简单的解决方案。

    如果您想拥有可下载的关卡,您将需要设置一个自己的服务器,该服务器将交付并检查与苹果服务器的正确购买交易。您还需要创建所有下载和架构,以将这些关卡加载并使用到您的应用中。

    但是,您可以在这里查看http://urbanairship.com/in-app-purchase/ 以获取有关创建可下载项目的帮助。

    【讨论】:

      【解决方案3】:

      此代码将助您一臂之力:也适用于模拟器:https://github.com/boxerab/InAppPurchase

      【讨论】:

        猜你喜欢
        • 2011-08-26
        • 2012-09-07
        • 1970-01-01
        • 2011-09-06
        • 1970-01-01
        • 2010-11-13
        • 2013-07-03
        相关资源
        最近更新 更多