我正在尝试为Windows Phone 8应用实施应用内购买。 RequestProductPurchaseAsync
的文档并不专门针对手机而存在。在Windows应用商店文档中,有一个有趣的界限:
您应该将成功结果视为指示异步过程 完成没有错误。确保交易本身 成功后,检查返回的LicenseInformation元素 收据。
收据中没有LicenseInformation
元素(或属性)。有Receipt
,ProductReceipt
和Signature
。问题 - 之前是否有人使用应用内购买?如何报告交易失败/取消?
答案 0 :(得分:2)
抓住真正的手机。
取消由异步完成(参数Info
,Status
)报告,Status = AsyncStatus.Error,Info.ErrorCode为COMException,HResult = 0x80004005(E_FAIL)。
对于至少一些真正的交易失败(例如,目录中未找到产品ID),报告的状态和HRESULT是相同的。我不认为有一种很好的方法来捕获当前API的取消。报告AsyncStatus.Canceled
是一个好主意,但到目前为止还未实施。