錯誤一:Error checking for billing v3 support(response:3:Billing Unavailable)
錯誤原因:Google Play賬號問題,注冊賬號是選擇的國家區(qū)域有關(guān),與賬號 是否綁定信用卡無關(guān)
注意事項:
- 測試時,需要訪問測試鏈接,加入測試計劃
- 提示:無法購買您要買的商品, 檢測Google 賬號是否有加入測試組
- 使用靜態(tài)響應(yīng)模擬測試,將請求購買商品id 改成預(yù)留商品id即可返回相應(yīng)的支付結(jié)果狀態(tài)碼, 方便模擬測試
- 購買非訂閱商品后,需要消耗掉才能二次購買
- 購買時若提示:
/** Requested product is not available for purchase */
int ITEM_UNAVAILABLE = 4;
檢測是否是正式簽名版本apk
問題一:添加到測試組的Gmail 賬戶,購買時未顯示“這是測試訂單,我們不會向您收取任何費用” 提示,而是正常支付流程,會產(chǎn)生收費
原因:還需要額外設(shè)置沙盒測試
沙盒測試:測試期間,經(jīng)過授權(quán)的用戶帳戶可通過 Google Play 購買您的應(yīng)用內(nèi)商品,不過這些用戶帳戶不用實際支付費用。
設(shè)置沙盒測試賬戶:在 Developer Console 中,轉(zhuǎn)到 Settings > Account details,然后在 License Testing 部分將相應(yīng)地址添加到 Gmail accounts with testing access 字段并保存。

Google Console 設(shè)置
劃重點:
沙盒測試賬號只是額外增加了許可測試(license test)的設(shè)置,只有這樣支付時候不需要真正付款。
集成方案,均是 google 官方方案
- 通過 implementation 'com.android.billingclient:billing:1.1' 集成
- 通過創(chuàng)建 IInAppBillingService.aidl,網(wǎng)上的博客大都是此種方案,個人任何還是方案1比較簡單,可以省去很多代碼,當然可以看看這種方式了解下是如何執(zhí)行的
幫助:
- 當設(shè)備安裝有GooglePlay時,無法調(diào)起 支付訂單詳情頁面時,檢測 GooglePlay 是否允許后臺運行,當禁止??后臺運行時,是無法調(diào)起支付彈框的