首页 文章

应用程序中的iOS恢复购买收据

提问于
浏览
6

以下摘录来自Apple文档,如何在iOS 7中恢复应用程序 . 他们说您可以存储收据并稍后查看用户已购买的内容,或者您可以刷新App Receipt . 我的问题是:

1)是否有一个应用程序收据或有多个单一收据?

2)存储这些收据更有意义,而不是直接存储用户已经购买的功能

3)我如何检查从刷新中获得的收据?到目前为止,我所有试图解析它的尝试都失败了 .

4)是否有任何框架具有很多功能(在iCloud上保存收据/购买的产品,使购买更容易,处理下载,处理各种连接问题等)?甚至可能支持远程服务器(和验证) .

我希望有人能提供帮助! :)


刷新应用程序收据

创建收据刷新请求,设置委托,然后启动请求 . 该请求支持在测试期间以各种状态获取收据的可选属性,例如过期收据 - 有关详细信息,请参阅SKReceiptRefreshRequest的initWithReceiptProperties:方法的值 .

request = [[SKReceiptRefreshRequest alloc] init];
request.delegate = self;
[request start];

收据刷新后,检查并交付任何已添加的产品 .

1 回答

  • 12

    1)是否有一个应用程序收据或有多个单一收据?

    有一个应用程序收据 . 在此之前,Apple为每笔交易提供了收据 . 这些收据仍然存在但已被弃用 .

    2)存储这些收据更有意义,而不是直接存储用户已经购买的功能

    不再是(适用于iOS 7应用) .

    3)如何查看从刷新中获得的收据?到目前为止,我所有试图解析它的尝试都失败了 .

    这是一个复杂的问题 . 我建议阅读这个毫无歉意的长答案:https://stackoverflow.com/a/20039394/143378 .

    4)是否有任何框架具有很多功能(在iCloud上保存收据/购买产品,使购买更容易,处理下载,处理各种连接问题等)?甚至可能支持远程服务器(和验证) .

    我知道有3个:

    到目前为止,MKStoreKit似乎已被废弃,而CargoBay不支持应用程序收据 . CargoBay具有RMStore没有的功能,反之亦然 . 我会检查它们,看看哪个更符合您的要求 .

    无论如何,我建议在使用任何库之前阅读 StoreKit 文档 . 这些库提供代码而不是理解 .

    免责声明:我开发了RMStore .

相关问题