【发布时间】:2014-03-01 00:55:36
【问题描述】:
我正在构建一个提供应用内购买的 Windows 应用商店应用。从可用的文档中我不明白这如何与多个安装或设备一起工作。我希望我的用户能够在不同设备上使用多个安装的 IAP(购买一次,在任何设备上使用)。
这是Using receipts to verify purchases的摘录:
在某些情况下,您可能需要验证用户是否购买了您的 应用程序,或已进行应用内内容购买。例如,想象一个游戏 提供下载的内容。如果购买游戏的用户 内容想要在不同的 Windows 8 设备上播放,您需要 验证用户是否已经拥有该内容。
还有来自Protecting your Windows Store app from unauthorized use:
为防止用户采用此策略非法使用您的 应用程序,我们有一个收据功能,可让您验证用户的 访问您的应用程序和服务。您的应用程序能够获得签名 通过 Windows 进行的任何与应用程序相关的交易的收据 商店,例如应用程序的初始购买和任何应用程序内 购买。然后,您的应用可以使用此信息来确定哪些服务 或它可以为该用户访问的功能。 [...] 每张收据的 ID 每个用户(和设备)元素都是唯一的,您可以在 您的服务器确认交易是合法的 用户而不是欺诈交易。这是特别有价值的 当您的应用拥有自己的身份验证机制时,因为它允许 您验证似乎已购买您的应用程序的每个用户 是,事实上,一个独特的客户。
我的问题是:
- 什么时候需要后端来存储收据?
- 我什么时候在后端检查收据(应用启动时)?
- 每台设备的收据都是唯一的。这对多个设备有何帮助?我希望我的用户能够在购买一次后在多台设备上使用 IAP。
- 如果收据用于验证合法交易,这是否意味着
CurrentApp组件提供的信息可能不是真实的,而是经过黑客攻击?如果是这样,我为什么要首先信任原始收据?
【问题讨论】:
标签: in-app-purchase windows-store-apps licensing windows-store receipt