ios - 如何基于每个用户存储应用内购买以供离线使用

标签 ios in-app-purchase keychain storekit entitlements

iOS 上的钥匙串(keychain)似乎是按应用而不是按用户存储数据。

因此,如果我将有关应用内购买的信息存储在钥匙串(keychain)中,那么无论当前登录的是哪个 Apple-id,这些产品都将在设备上保持可用。

我可以要求网络访问并执行恢复以了解哪些产品应该可用,但执行非用户启动的恢复似乎是不好的做法。此外,该应用程序应能在离线状态下正常运行。

我的问题是:如何保护应用内购买不被购买它们的 Apple-id 以外的用户使用?

最佳答案

您需要为此组织用户身份验证 - 让您的用户在您的服务中创建帐户,并在您的应用程序中提供为他们登录和注销的功能。应用启动后,它必须检查登录的用户并为该用户提供应用内购买。

关于ios - 如何基于每个用户存储应用内购买以供离线使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10396910/

相关文章:

ios - 如何处理后台 url session 丢失的互联网连接?

ios - 如何制作一个标签以在所有 View Controller 上设置分数?

in-app-purchase - appStoreReceiptURL的确切用途是什么?

objective-c - iOS 上自动续订订阅所需的服务器

macos - Mountain Lion 操作系统中的证书签名请求

ios - 如何从主视图 Controller 访问 ScrollView 子类(初学者)

ios - UITableView 背景上的 UIGestureRecognizer

iphone - 将应用内购买(订阅)添加到 iOS 应用 - 无法测试 ("Invalid product ID")

ios - 无法解锁钥匙串(keychain)

ios - 无法正确存储钥匙串(keychain)中的值