应用无法获取预付费订阅的SkuDetailsList,自动续订订阅正常
预付费订阅无法获取SkuDetails的常见原因及排查方案
请求的订阅类型参数错误
Google Play的预付费订阅和自动续订订阅同属subs类型,若你在调用API时误将预付费订阅的SKU归入一次性商品(inapp类型)的请求列表,会直接返回空结果。请确认代码中是将两类订阅的SKU统一放在subs类型的请求中发起查询。Play Console配置未完成或未生效
- 预付费订阅需发布至至少一个测试轨道(内部测试/封闭测试/开放测试),且测试设备的账号已加入对应轨道的测试用户列表;若订阅仍处于草稿状态或未分配测试轨道,无法被API获取。
- 检查订阅的区域可用性,确保测试设备所在地区在订阅的开放区域范围内,未开放地区的设备无法拉取到对应订阅信息。
- 确认订阅状态为活跃,未被暂停、下架或设置了未到的生效时间。
Billing库版本不兼容
Google Play Billing Library 4.0及以上版本才全面支持预付费订阅功能,若你使用的是4.0以下的旧版本,可能无法正确解析预付费订阅的SKU信息。建议升级至最新稳定版(如5.x/6.x系列)。SKU ID存在输入错误
核对代码中使用的预付费订阅SKU ID与Play Console中创建的完全一致,包括大小写、特殊符号、字符长度。哪怕单个字符的差异,都会导致API无法匹配到对应订阅,返回空列表。测试账号权限异常
- 测试账号需已接受测试邀请,且未被标记为“排除测试用户”。
- 开发者账号本身默认无法直接测试订阅(除非在Play Console中开启开发者测试权限),建议使用专门的测试账号进行验证。
内容的提问来源于stack exchange,提问作者user924
相关产品推荐
相关产品推荐

