将玩家 ID 关联到交易?

Associate player id to a transaction?

我的应用程序的工作方式是,我的用户已经向我注册,他们可以登录并购买硬币。这些硬币是使用 StoreKit 进行的应用内购买。

我验证收据的方式是将它们发送到我的服务器。我连同收据一起发送了玩家的用户 ID,这样我的服务器就知道该记入谁的账户。

问题来了。假设交易失败。当应用程序再次尝试进行验证时,我将不知道哪个用户购买了这个。

有没有什么方法可以将一些元数据添加到交易中,以便我以后可以知道哪个用户帐户购买了它?

谢谢

据我所知,您无法向 SKTransaction 添加信息。

我通常做的是一列未验证的交易。该队列通常包含包含您的服务器(您的玩家 ID)、交易本身及其状态(例如,交易是否已完成?)所需的所有信息的对象?

我尝试在每次应用程序连接时分派该队列,如果它失败超过 X 次,那么我会提示一个弹出窗口,要求用户发送包含问题详细信息的电子邮件。