Ios 在退出iTunes后是否应该出现应用内购买?

Ios 在退出iTunes后是否应该出现应用内购买?,ios,in-app-purchase,app-store,Ios,In App Purchase,App Store,我正在开发一个iOS应用程序。它将有非消耗品的应用程序内购买 Q1.假设用户使用“account1”在iPad或iPhone上登录到“iTunes&App Store”,然后购买应用内购买,然后注销“iTunes&App Store”。然后他们返回应用程序 他们的应用内购买是否仍然存在?不会,但应该吗 如果没有,我的问题得到了回答。另一方面,假设它应该存在。然后我有一个后续问题 第二季度。完成上述所有步骤后,同一用户使用不同的帐户“account2”登录到“iTunes&App Store”。在

我正在开发一个iOS应用程序。它将有非消耗品的应用程序内购买

Q1.假设用户使用“account1”在iPad或iPhone上登录到“iTunes&App Store”,然后购买应用内购买,然后注销“iTunes&App Store”。然后他们返回应用程序

他们的应用内购买是否仍然存在?不会,但应该吗

如果没有,我的问题得到了回答。另一方面,假设它应该存在。然后我有一个后续问题

第二季度。完成上述所有步骤后,同一用户使用不同的帐户“account2”登录到“iTunes&App Store”。在以“account2”登录时,他们使用“account1”进行的应用内购买是否仍然存在


如果你能用苹果公司的官方声明来增强你自己清晰简洁的答案,那将是非常棒的,而且更有可能被标记为解决方案!如果没有,请提前感谢您对最佳用户体验的个人想法、想法和意见。。。如果苹果对此没有明确的立场,那么无论谁提出了最好的方案,都会将其答案标记为解决方案。

对于两个用户在同一台设备上输入他们的应用商店凭据来说,这肯定是一个不寻常的情况。也就是说,我能看到的最接近的是:

“非消耗性产品。用户仍可使用的物品 无限期地在用户的所有设备上。这些设备可供 用户的所有设备。示例包括内容,如书籍和 游戏级别和其他应用程序功能。”

如果你照字面意思,如果你认为这个设备仍然是同一个用户,即使他们已经注销了,那么我想你应该确保你也给新用户颁发非消费品。

根据我的经验,很多应用程序在购买IAP后都会在本地存储,因此如果应用程序没有被删除,任何用户都会看到解锁的内容。你的应用程序不一定知道新的iTunes用户正在使用该应用程序,因此很难检测到新用户正在使用该应用程序并撤销其内容


另外,如果你不想让两个用户共享一次购买,我认为这更有意义,使购买成为消费品,并在应用程序中实施某种登录机制,以便将其记入个人身份验证帐户。

两个用户在同一设备上输入应用程序商店凭据肯定是不寻常的。也就是说,我能看到的最接近的是:

“非消耗性产品。用户仍可使用的物品 无限期地在用户的所有设备上。这些设备可供 用户的所有设备。示例包括内容,如书籍和 游戏级别和其他应用程序功能。”

如果你照字面意思,如果你认为这个设备仍然是同一个用户,即使他们已经注销了,那么我想你应该确保你也给新用户颁发非消费品。

根据我的经验,很多应用程序在购买IAP后都会在本地存储,因此如果应用程序没有被删除,任何用户都会看到解锁的内容。你的应用程序不一定知道新的iTunes用户正在使用该应用程序,因此很难检测到新用户正在使用该应用程序并撤销其内容


另外,如果你不想让两个用户共享一次购买,我认为这更有意义,使购买成为可消费品,并在应用程序中实施某种登录机制,以便将其记入个人身份验证帐户。

购买的物品实际上存储在设备上应用程序捆绑包中的文件中。可以使用访问文件的路径或url。国家:

在OSX中,如果appStoreReceiptURL方法不可用(在较旧的系统上),则可以退回到硬编码路径。收据的路径是/Contents/\u MASReceipt/receipt,位于应用程序包中

虽然这段引文特别提到了OSX,但iOS也是如此,唯一的例外是结果是一个本地化的应用程序url。为了进一步支持这一点,文档(即
appStoreReceiptURL
返回的内容)说明:

NSBundle对象帮助您访问磁盘上捆绑包目录中的代码和资源

因此,有了这种理解,我们可以得出结论,购买不是无状态的。它们保留在应用程序的上下文中。如果用户退出iTunes,则不会删除该文件

如果一个应用程序收听了,新的交易会不时出现,特别是当用户购买自动续费订阅时。如果用户从iTunes注销,他们将收到一个请求,要求使用他们最初订阅的帐户登录,以便应用程序接收并保存新的收据。但我离题了

通过在应用程序中保留购买状态,它允许在没有互联网连接的情况下使用购买。由于离线设备无法通过苹果认证,因此将购买状态保留在其他任何地方都会破坏此功能。所以是的,它应该存在

对于Q2
account1
的收据在收到
account2
的交易后将替换为
account2
。但是,在
account2
完成第一笔交易之前,
account1
的收据仍将保存在磁盘上。这可以被用作在用户和AFAIK之间共享购买的漏洞,如果不使用您自己的用户帐户,就不存在好的解决方案。有一种方法可以描述这个问题


这会发生吗?我希望不是这样,但这似乎是购买收据有状态设计的意外结果。

购买实际上存储在设备应用程序包中的一个文件中。可以使用访问文件的路径或url。国家:

在OS X中,如果appStoreReceiptU