3

我正在嘗試爲Windows Phone 8應用程序實現應用內購買。 RequestProductPurchaseAsync的文檔不是專門針對手機而存在的。在Windows應用商店文檔中,有一條有趣的線條:RequestProductPurchase異步和事務失敗

您應該將成功結果視爲指示異步過程 完成而沒有錯誤。爲確保交易本身成功,請檢查返回的 收據中的LicenseInformation元素。

收據中沒有LicenseInformation元素(或屬性)。有Receipt,ProductReceiptSignature。問題 - 以前有沒有人使用應用內購買?如何報告交易失敗/取消?

+0

我也在想這個 – PutraKg 2013-04-11 08:50:54

+0

我還沒有嘗試過這個,但是在返回的XML(AppReceipt或ProductReceipt元素)中沒有任何東西可以使用嗎?看起來像http://msdn.microsoft.com/en-us/library/windows/apps/hh967814.aspx不是MSDN上最有用的頁面。 – 2013-04-11 10:22:55

+1

@PutraKg:然後upvote這個問題。 – 2013-04-11 12:04:38

回答

2

讓我的手在真正的手機上。

通過狀態= AsyncStatus.Error的異步完成(參數Info,Status)報告取消,Info.ErrorCode爲COMException,HResult = 0x80004005(E_FAIL)。

對於至少一些真正的交易失敗(例如產品編號未在目錄中找到),報告的狀態和HRESULT是相同的。我不認爲有一個很好的方法來捕捉當前API的取消。報告AsyncStatus.Canceled將是一個好主意,但到目前爲止還沒有實施。