You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android应用内支付测试:Google Play支付弹窗空白问题求助

Android应用内支付测试弹窗空白问题排查方案

以下是针对你遇到的支付弹窗空白、滑动触发取消错误的具体排查步骤:

1. 确认测试账号配置正确性

  • 必须将测试设备使用的Google账号添加到Google Play Console的许可测试人员列表(路径:应用内商品 → 测试 → 许可测试人员)
  • 测试设备需仅登录该许可测试账号,退出其他所有Google账号
  • 禁止使用开发者账号本身进行测试,开发者账号无法触发测试SKU的正常支付流程

2. 验证应用签名与版本匹配

  • 本地测试用APK/AAB的签名必须与上传到Play Console的版本签名完全一致(若使用Play App Signing,需确保本地签名为上传密钥,或已将调试证书SHA-1添加到控制台的应用签名配置中)
  • 本地应用的versionCode和versionName必须与Play Console中上传的版本完全匹配,否则Play商店无法识别应用身份

3. 检查BillingClient调用流程

  • 确保调用launchBillingFlow时使用的SkuDetails对象是通过querySkuDetailsAsync返回的有效实例,禁止手动构造该对象
  • 调用launchBillingFlow必须在UI线程执行,不可在后台线程触发
  • 确认BillingClient初始化时已调用enablePendingPurchases()(Billing Library 2.0及以上版本必填)
  • 仅在BillingClientStateListener回调确认连接成功后,再执行SKU查询和购买操作

4. 排查测试SKU的使用方式

  • 测试SKU(如android.test.purchased)属于消耗型内购商品,查询时需指定BillingClient.SkuType.INAPP类型,不可误用订阅类型SkuType.SUBS

5. 重置Play商店状态

  • 清除Google Play商店的缓存和数据(路径:设置 → 应用 → Google Play商店 → 存储 → 清除缓存/清除数据),重启设备后再次测试

6. 验证Manifest配置细节

  • 确认Manifest中已正确添加<uses-permission android:name="com.android.vending.BILLING" />权限,无拼写错误
  • 确保应用已获取网络访问权限(支付弹窗需加载在线内容)

7. 测试真实内购商品

  • 在Play Console创建一个真实的测试内购商品(设置为激活状态,并添加到测试轨道),使用许可测试账号尝试购买。若真实商品的支付界面正常加载,说明问题出在测试SKU的调用逻辑;若仍空白,则需进一步检查应用端的Billing Library集成逻辑

内容的提问来源于stack exchange,提问作者MKrati

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 20:52:25