2014-09-05 61 views
3

我在使用Android的IAB購物時遇到問題。使用Android應用內結算購買商品時出現無法識別的錯誤

我似乎能夠得到buyIntent,我用這個代碼,由IAB documentation採取啓動:

Bundle buyIntentBundle = mService.getBuyIntent(3, getPackageName(), 
        sku, "inapp", getString(R.string.iab_key)); 

int response = buyIntentBundle.getInt("RESPONSE_CODE"); 
if(response == 0) { 
    PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT"); 
    startIntentSenderForResult(pendingIntent.getIntentSender(), 
         1001, new Intent(), 0, 0, 0); 
} 

然而,當意圖開始,我得到一個錯誤信息上的應用程序指出「項目的購買不可能的(錯誤代碼IAB-LPD)」(來自意大利鬆散翻譯),並在onActivityResult方法,做

int responseCode = data.getIntExtra("RESPONSE_CODE", 0); 

時,我得到的2 responseCode,未在IAB API reference記錄,像我一樣t記錄錯誤代碼0,1,3,4等等。

Api V2參考指出,錯誤代碼2適用於網絡連接關閉的情況,但我的設備連接似乎工作正常。

我也沒有在互聯網上的任何地方發現任何對錯誤代碼「IAB-LPD」的引用。

我嘗試將我的許可證密鑰更改爲無效值,並且我預料會收到一條錯誤消息,指出「此應用程序未授權進行結算」,因此我認爲這不是我使用的許可證密鑰的問題。

我錯過了什麼?

更新:我也並不認爲這是有權限的問題,因爲我能夠從文檔中描述的相同的技術得到SKU的細節。

更多更新:我也不會在LogCat中得到任何錯誤,無論是在啓動意圖時還是在執行onActivityResult時。

回答

2

我假設你看到錯誤消息是

Impossibile acquistare l'articolo. (Codice di errore: IAB-LPD) 

似乎是在該消息的意大利語翻譯錯誤(錯誤代碼已被翻譯)。

你正在尋找的錯誤消息爲

The item could not be purchased. (Error code: IAB-DPTL) 

答案this question應該幫助您解決問題。

(對於給您帶來的不便,我們對此表示歉意,我提交了一個錯誤修復程序,它應該在即將發佈的版本中修復。)

相關問題