2014-07-25 91 views
1

我對存儲在Windows 8.1的應用程序,但是當我嘗試使用下一段代碼新功能,我想添加到我的應用程序Windows應用商店CurrentApp.LoadListingInformationAsync() - 錯誤0x801900cc

var listingInfo = await CurrentApp.LoadListingInformationAsync(); 

我收到一個錯誤,我不完全知道它是什麼意思。我確實發現了這個錯誤,然後我將它顯示在一個MessageDialog上,然後我打印了一個屏幕。這是錯誤:

We could not receive your donation due to an unexpected error: 
System.Exception: Exception from HRESULT: 0x801900CC 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task 
task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at ArchMedia_Player.Services.Donations.<ListingInformationAsync> d__0.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task 
task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at ArchMedia_Player.Services.Donations.<Donate>d__a.MoveNext() 

有人知道這意味着什麼,我該如何解決它? 我還提到,這個工程完全確定:(使用CurrentApp 模擬器

var listingInfo = await CurrentAppSimulator.LoadListingInformationAsync(); 

回答

8

System.Exception: Exception from HRESULT: 0x801900CC

這是一個預期的異常,而你正在開發應用程序。錯誤代碼爲BG_E_HTTP_ERROR_204,0xCC編碼HTTP響應錯誤代碼。 0xCC == 204,HTTP錯誤204意味着「無內容」。換句話說,Store服務器不知道您的應用程序有任何應用程序內購買。

這是一個雞與雞蛋的問題,服務器不知道您的應用程序內購買,直到之後您提交您的應用程序並獲得批准。您必須使用CurrentAppSimuator測試您的應用程序,以調試和測試您的應用內購買。基本操作指南is here。您不可忘記的一個重要步驟就是在提交您的應用程序進行驗證之前,用CurrentApp替換CurrentAppSimulator。

當您將應用內購買添加到您的新版本時,您的應用已在商店中並未考慮。關鍵的步驟是讓Store服務器知道您的購買選項。如鏈接的MSDN文章所述,您在提交應用程序時執行此操作。直到您的提交被批准後,它們纔會生效。

所以,不要驚慌,你可以用模擬器測試你的代碼。當您確認自己能夠正常工作時,只要按照MSDN文章中的步驟操作,在提交應用程序後就沒有理由擔心這會成爲問題。

+0

是的,所以在我添加了可以在應用程序內購買的產品之後,該應用程序不再崩潰並且代碼正常工作。顯然這是問題所在。儘管如此,它仍然可以工作,並且在我看到一切正常後我將會加入這些產品。謝謝漢斯! :) – TheQuestioner

0

我有同樣的例外。我更新了包證書文件(StoreKey.pfx),方法是創建包並登錄到Windows Store。它解決了我的問題。