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

Android Studio In-App Billing v4.0:商品详情查询为何返回空列表

内购查询返回空列表排查方案

与封闭测试直接相关的必查配置

  • 测试用Google账号必须已经加入封闭测试的测试者名单,且点击官方发送的测试邀请链接完成了邀请接受操作,测试设备登录的Google账号必须是已加入名单的测试账号,同时设备无Root、Xposed等篡改运行环境的配置,Google Play服务运行正常。
  • 本地测试的apk包的包名、versionCode、签名指纹必须和上传到后台的aab包完全一致,绝大多数同类问题都是debug包默认用了测试签名,和打包aab的正式签名不一致导致的,将debug构建的签名配置替换为aab所用的正式签名即可解决。

内购商品配置检查

  • 确认后台创建的tokens、extra_lives两个商品的类型为非订阅类普通内购,和代码中指定的BillingClient.SkuType.INAPP完全匹配,如果是订阅类商品,需要将type改为BillingClient.SkuType.SUBS。
  • 确认两个商品的状态为已激活,无草稿、停用标识,同时你的Google Play开发者账号的税务信息、付款资料已经完成平台验证,无待处理的合规校验项。

代码逻辑检查

  • 确保调用querySkuDetailsAsync之前,BillingClient已经调用startConnection完成了和Google Play服务的连接,且回调中返回了成功状态,未完成连接的情况下调用查询接口会直接返回空结果。
  • 可以在onSkuDetailsResponse回调中先打印billingResult.getResponseCode()和对应的错误信息,响应码可以直接定位具体问题:如返回DEVELOPER_ERROR就是应用身份校验失败,返回USER_CANCELED就是账号未授权等。
  • 确认应用Manifest中已添加内购权限:<uses-permission android:name="com.android.vending.BILLING" />,targetSdk>=30的版本还需要添加Queries节点配置Google Play包名。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 17:24:05