iOS内购提示“skipping product because no price was available”问题排查
iOS内购提示“skipping product because no price was available”的排查点
- 核对测试产品ID的一致性:App Store Connect里配置的带
_testing后缀的产品ID,必须和代码里请求的完全一致,大小写、后缀拼写都不能错。另外要确认该产品状态是准备提交或已批准,草稿状态的产品StoreKit根本拉不到。 - 检查价格区域配置:给测试产品设置价格时,必须包含你测试设备所在的区域。比如用中国区沙盒账号测试,就得给产品配置中国区的价格,没配对应区域的话就会提示无可用价格。
- 沙盒账号区域要匹配:测试用的沙盒账号区域,得和产品配置的价格区域对应。比如产品只设了美国区价格,你用中国区沙盒账号登录,肯定拉不到价格信息。
- 清空StoreKit缓存试试:本地缓存可能搞鬼,卸载App后重启设备,去App Store退出当前账号,重新登录沙盒账号,再装App测试。
- 验证API返回的product_id拼接:确认从API拿的原始ID加上
_testing后缀后没有格式错误,比如多打了下划线或者后缀写成_test。可以在代码里加日志,把最终请求的ID打出来,和后台配置的对比。 - 再检查协议完整性:虽然你说激活了付费应用协议,但要确认税务、银行这些必填信息都提交并通过审核了。协议有未完成项的话,哪怕产品配置好了也拿不到价格。
内容的提问来源于stack exchange,提问作者Christopher Sonny
相关产品推荐
相关产品推荐

