android google內購注意事項

來源:互聯網
上載者:User

在android機器上使用google內購

1、在開發人員控制台不可添加相同bundle id的應用、也就是com.android.game之類的、因為此bundle id是google play唯一識別應用程式區別的標識、如果邇硬要添加、也是可以的、不過google play只認最先添加的、包括內購項目、也是直接連去最先添加相同bundle id的那個應用、即使其它android應用使用了其它的keystore、但依舊改變不了會串連至相同bundle id的第一個應用的事實上、此事非常有可能在邇添加了內購項目卻始終顯示找不到該文檔的報錯、所以務必保證相同bundle id只上傳一個的原則

 

2、注意google play版本必需要在3.5以上、而且必需是非中國區的google play、目前測試通過的是美國區的google play、如果邇要在中國地區使用美國的商店、請開啟VPN串連至美國的伺服器、然後強制關閉google play、然後清空google play的緩衝重新開啟google play

 

3、當邇更新應用版本時、請保證相同的bundle id、比現版本更高的bundle version和version code

 

 

4、google官方的java樣本有一個重複購買的BUG、也就是點擊一次會出來兩個返回、一個一般是返回無此文檔、另一個就是正常返回、其實這裡的BUG引起的便是java主文件中關於按鈕響應的代碼有了錯誤、官方代碼判斷了兩次、一次判斷是不是內購類型、另一次判斷是不是訂閱類型、實際上訂閱類型並不加判斷的去執行、導致總是多出來一個無此文檔的錯誤、解決的方法就是為訂閱類型加上判斷

原BUG代碼:

if (mManagedType != Managed.SUBSCRIPTION &&                    !mBillingService.requestPurchase(mSku, Consts.ITEM_TYPE_INAPP, mPayloadContents)) {                showDialog(DIALOG_BILLING_NOT_SUPPORTED_ID);            } else if (!mBillingService.requestPurchase(mSku, Consts.ITEM_TYPE_SUBSCRIPTION, mPayloadContents)) {                // Note: mManagedType == Managed.SUBSCRIPTION                showDialog(DIALOG_SUBSCRIPTIONS_NOT_SUPPORTED_ID);            }

修改後的代碼

if (mManagedType != Managed.SUBSCRIPTION &&                    !mBillingService.requestPurchase(mSku, Consts.ITEM_TYPE_INAPP, mPayloadContents)) {                showDialog(DIALOG_BILLING_NOT_SUPPORTED_ID);            } else if (mManagedType == Managed.SUBSCRIPTION && !mBillingService.requestPurchase(mSku, Consts.ITEM_TYPE_SUBSCRIPTION, mPayloadContents)) {                // Note: mManagedType == Managed.SUBSCRIPTION                showDialog(DIALOG_SUBSCRIPTIONS_NOT_SUPPORTED_ID);            }

狠明顯就是對else if 後面的條件判斷加多了一個mManagedType == Managed.SUBCRIPTION的判斷、如果不是訂閱類型就不再執行後面的代碼

相關文檔地址:http://stackoverflow.com/questions/10775008/in-app-billing-item-not-found

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.