Google Play 测支付总是出问题?最全解决方案!
关注公众号,经常分享Google出海经验,开启出海成长之旅。添加管理员微信 :kris_wuii,进群讨论出海技巧。
大家好,我是小GO!相信做海外的朋友们总是会遇到这样的问题,明明都按照文档上的来接入了,为什么就是拉不起来支付窗口?!!
明明技术测试的时候是ok的,怎么一到其他人测试就报错/拉不起支付了呢?!想要减少支付碰壁,一篇文章告诉你的技术/运营/测试应该怎么做!
首先,如果需要测Google支付的话,要在Google Play后台的测试通道和「许可测试」添加测试人员的账号,详情可参考上一篇文章
Google Play 内购/订阅实现-测试支付
Android Go出海,公众号:Android GO出海Google Play 内购/订阅实现
注意事项
确保Google Play配置正确
1、对应的包名
2、上传时的版本号
3、签名文件(SHA1/256的值要一一对应,如果用了Google Play的自动签名,需要添加相对应的SHA值)
4、配置的商品代码和拉起支付的商品代码一定要检查好
5、对应的json文件/p12文件一定要检查对应项目的
6、确保本地测试包与测试版本APK的包名、版本号、APK签名相同
7、确认应用的 Manifest 中是否有添加正确的权限 (com.android.vending.BILLING)请确保你的设备兼容Google服务(Google三件套) 请确保你的设备网络环境没有问题(科学上网) 如果需要测试真实支付,请了解你的借记卡/信用卡等是否支持海外支付
1、检查你的卡号是否输入正确,并且银行卡尚未过期
2、请确保你的卡里有足够的资金付款部分付款方式无法在部分国家/地区使用,请检测你的商品设置是否正确 一设备对应一Google账号,多帐户可能存在无法支付问题,请知悉,如有多个账号建议先退出 为防止Google关联,请不要有多帐户问题和同一帐户测试多个应用支付
首先,假如你的设备一直拉不起支付,这里有个快速判断的方法:
Q:为了防止欺诈,你的付款方式提供商可能会对可疑交易进行标记
A:与你的银行或付款方式提供商联系,他们可以为你提供有关拒绝原因的详细信息,并帮助你解决问题
A:检查你最近的交易,看看是否有可疑或重复的购买记录 / 尝试使用不同的信用卡或借记卡
A:你的信用卡、借记卡或谷歌钱包账户可能已过期或已停用。
Q:用户支付提示「Purchase currency is not supported」
A:说明当前支付地区或货币不支持,或跟Google Play后台设置有关
Q:你的谷歌账户可能存在问题,例如欠费、被挂起或被禁用
A:你可以检查订单历史记录或联系谷歌Play支持团队,以了解可能存在的订单问题。如果存在账户问 题,请先更新您的账户信息并等待24小时,然后再尝试支付
Q:用户支付提示「错误 交易被拒绝/Error The transaction was refused」
A:付款遭到系统拒绝,账户可能有问题。建议用户前往Google付款中心验证身份或更新个人资料。
Q:付款时提示「您的交易无法完成」,一般是触发了谷歌的风控系统
A:寻找客服解决。
A:需要改用其他有效的付款方式
Q:无法连接到Google服务/无法拉取Google支付
A:请尝试更换科学上网节点,然后清除Google Play 缓存(设置->应用详情->存储->清除缓存)
A:配置不对,通常为版本号不对应
Q:付款时提示「无法购买您要购买的商品」
A:Google账号未加入测试计划/版本不对应
四、技术相关问题和解决方案:
Q:错误代码2,错误信息为An internal error occurred
A:此种错误意味着Google发生内部错误,与Google服务器连接出现问题,建议用户更换网络或重新启 动应用重试
Q:错误代码3,错误信息为Google play In-app Billing API version is less than x
A:此种错误一般为用户Google账户问题和网络问题,建议升级相关Google系统应用或更换网络重试
Q:错误代码-3, NETWORK_ERROR
A:此错误表示设备和 Play系统之间的网络连接出现问题。请检查网络连接。请尝试更换科学上网节点,然后清除Google Play 缓存(设置->应用详情->存储->清除缓存)
A:发起调用的应用向该 API 发出的请求太多,已经被限制。参考文章
https://developer.android.google.cn/google/play/integrity/reference/com/google/android/play/core/integrity/model/IntegrityErrorCode?hl=zh-cn#TOO_MANY_REQUESTS
Q:错误代码-12,GOOGLE_SERVER_UNAVAILABLE,未知内部 Google 服务器错误
A:请尝试更换科学上网节点,然后清除Google Play 缓存(设置->应用详情->存储->清除缓存)
Q:错误代码-1,API_NOT_AVAILABLE,设备上安装的 Play 商店版本可能太低,并且 Integrity API 不可用。另一种可能是, Integrity API 未在 Google Play 管理中心内启用。
A:确保已在 Google Play 管理中心内启用 Integrity API。让用户更新 Play 商店
Q:错误代码-6,PLAY_SERVICES_NOT_FOUND , Play 服务不可用或需要更新。
A:安装、更新或启用 Play 服务
A:更新 Google Play 商店
最后,如果你还有其他问题,欢迎留言分享,一起为出海之路学习成长。然后技术人员请注意你所使用的结算库版本(目前最新结算库为v7.0.0),因为Google Play 结算库是会被废弃而导致应用不能发版或升级应用的。详情可以参考下目前的版本支持时间表
附上Google结算库内容国内文档的相关链接
Google Play 结算系统 | Google Play's billing system | Android
https://developer.android.google.cn/google/play/billing?hl=zh-cn
Developers处理 Play Integrity API 错误代码 | Google Play | Android Developers
https://developer.android.google.cn/google/play/integrity/error-codes?hl=zh-cn
总结:希望能帮助你解决 Google Play支付的相关问题。如果你在接入测试过程中遇到任何问题,或有任何相关的建议,欢迎在评论区留言分享!
最后的最后,持续高质量创作不易,欢迎大家关注我的公众号Android Go出海,持续分享Android出海经验,进GP上架交流群讨论出海技巧。