ios - 在 iOS 应用内购买中恢复购买

标签 ios objective-c swift in-app-purchase

我正在开发一个具有自动更新订阅功能的杂志应用程序。我已经实现了购买方法并使用收据进行验证。我的疑问是

1.如何从收据中得知订阅是否已过期 2.如何将购买或下载的内容恢复到另一台设备。目前我自己的服务器正在提供内容下载。所以如果我在一月和二月购买了一些杂志,那么如果我尝试在三月份在另一台设备上恢复购买,怎么可能我恢复下载的内容或检查我的服务器以下载以前下载的内容。收据仅包含产品 ID,不包含任何与用户相关或唯一的内容,以处理服务器中的用户,以便下载和恢复可以从服务器处理。

谢谢。期待专家的帮助。

最佳答案

每个用户的设备都可以获得收据,并将该收据传递给您的服务器,或者对其进行解码并将结果传递给您的服务器。然后,您的服务器将通过下载它有权接收的任何内容来响应该设备。收据包含该帐户下进行的所有购买以及购买日期,因此您应该能够计算出订阅的有效时间。如果问题只是订阅当前是否处于事件状态,您还可以使用“expires_date”。

如果设备需要证明其订阅有效,它首先会告诉用户它需要检查其订阅,然后执行restoreCompletedTransactions 或SKReceiptRefreshRequest。

关于ios - 在 iOS 应用内购买中恢复购买,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37043066/

相关文章:

iphone - 将我的 iphone 应用程序添加为设备中的内容菜单

ios - Ipad 方向不正常

iPad 的 iOS 软件包在设备中安装时卡住

ios - iOS 3.1.3 上的 Core Audio 无音频

ios - 分配NSUInteger IndexBuffer

mysql - 如何通过指向我的 Web 服务的 URL 存储和检索 NSImage 数据?

Objective-C : "Hello world"已编译!没有基础标题。为什么?

swift - 如何使用 Swift 在 Sprite 工具包中创建一个矩形

php - 如何在 Swift 中解析从 php 接收到的数据编码?

ios - 如何替换捆绑文件的内容