Google Pay
我们发现要显示的任何SKU,检查您的互联网连接并确保您的Google Developer Console设置正确。
应用未通过审核或应用内商品ID传入有误,要先测内部测试版(bate、alpha)通过,再正式测支付。
无法购买您要的商品
1.测试版 APK 请上传至 Alpha/Beta 任一渠道,并且登入加入测试的测试者帐号,下载 APK 后再进行测试。模拟器跟本地安装的测试结果是无法验证的。
在"APK"页面里,有一个“选择使用网址”,把这个网址给你的测试人员,让你的测试人员用他的google账号点进去,点那个“成为测试人员”(前提是你把他加进了测试人员列表), 只有这样才能测试商品支付。
2.请确认应用的 Manifest 中是否有添加正确的权限 (com.android.vending.BILLING)
3. 保证 versionCode 和版本号与你上传的apk的包的一样。
4.请确认测试用户都已添加至许可测试的区块
5. 保证后台和你传入的购买商品的 id 一致,请确认打包apk的包名以及签名皆一致。
6.打开手机的账号管理,把测试账号放在第一个位置,或者干脆删除其他非测试账号。
7.可能封闭式测试、内部测试同时开启造成测试用户乱序。
8.检查账号所在地是不是在开启地区/国家范围内(正常情况不需要)
9.其他可能性包括连结内购服务的装置不支援最新的 IAB version 3,可能只支援版本 2,这方面也请多加确认。(谷歌技术团队提醒)
[DF-AA-01]
从服务器检索信息时出错。[DF-AA-01]
1.谷歌服务未开启;
2.网络连接不到谷歌。
解决方案:设置 -> 应用设置 -> 授权管理 -> 自启动管理 -> 打开 "Google 服务框架"
[DF-AA-20]
从服务器检索信息时出错。[DF-AA-20]
1.应用没有在Google Play商店发布,至少是alpha版本;
2.应用或者开发者账号被封。
请点击:Goole Pay支付接入
支付失败、无法支付、购买无效
1.新增国家/地区,但是汇率未刷新。(刷新汇率即可,下面问题同样有效)
2.依照以下步骤清除装置上的缓存试试看是否问题仍持续发生。
- 打开设备的主设置应用。
- 点按应用或应用管理器(显示选项可能因设备而异)。
- 点按 Google Play 商店。
- 点按存储。
- 依次点按清除缓存 > 确定。
- 依次点按清除数据 > 确定。
- 点按后退箭头以返回主菜单。
- 选择下载内容或内容下载管理器。
- 依次点按清除缓存 > 确定。
- 依次点按清除数据 > 确定。
- 重新启动应用。
弹窗提示:我们这边除了点错误,请重试。
1、回传值是 5 且又遭遇 "this version of the application is not configured for billing" 的错误讯息,请同时确认以下排解资讯:
(1)AndroidManifest 文件中一定要包含 "com.android.vending.BILLING" 权限。
(2)APK 是在发布模式下构建的。
(3)APK 已使用发行证书签名 (重要提示:应用程式如果通过 “Google Play 应用签名计划”,仅在您直接从 Google Play 商店下载时才有效)。
(4)APK 至少要上传到 Play 控制台的 Alpha / Beta 测试轨道,且生效时间大约需要 24-48 小时。
(5)欲测试的应用内商品必须上传到 Play 控制台 且其状态均需要为 "有效"。
(6)测试帐号须正确添加至 Play 控制台的「许可测试」页面上。
onPurchasesUpdated方法中,BillingResult.getResponseCode() == BillingClient.BillingResponseCode.DEVELOPER_ERROR
2、因Android Studio提示A newer version of com.android.billingclient:billing than 3.0.0 is available: 3.0.3,我就将支付升级,结果无法识别api
官方文档上的是implementation 'com.android.billingclient:billing:3.0.0',
将 implementation 'com.android.billingclient:billing:3.0.3'改为 implementation 'com.android.billingclient:billing:3.0.0'
原因:谷歌还不支持3.0.3使用时谷歌自己会报错
官方文档不一定都对,例如:facebook官方文档的版本一直是 implementation 'com.facebook.android:facebook-android-sdk:[5,6)'
实际上已经过去无数版本目前的版本是 implementation 'com.facebook.android:facebook-android-sdk:9.1.1'
所以接入SDK还是结合文档加实际情况多方面考虑排查问题。
支付返回CODE(BillingResponseCode)
public @interface BillingResponseCode {
int SERVICE_TIMEOUT = -3;//服务超时
int FEATURE_NOT_SUPPORTED = -2;//不支持功能
int SERVICE_DISCONNECTED = -1;//服务单元已断开
int OK = 0;//成功
int USER_CANCELED = 1;//用户按上一步或取消对话框
int SERVICE_UNAVAILABLE = 2;//网络连接断开
int BILLING_UNAVAILABLE = 3;//所请求的类型不支持 Google Play 结算服务 AIDL 版本
int ITEM_UNAVAILABLE = 4;//请求的商品已不再出售。
int DEVELOPER_ERROR = 5;//提供给 API 的参数无效。此错误也可能说明应用未针对结算服务正确签名或设置,或者在其清单中缺少必要的权限。
int ERROR = 6;//API 操作期间出现严重错误
int ITEM_ALREADY_OWNED = 7;//未能购买,因为已经拥有此商品
int ITEM_NOT_OWNED = 8;//未能消费,因为尚未拥有此商品
}
无法用于此购买交易
如果买家所用付款方式无效(如使用过期的信用卡、交易金额超出运营商代扣额度上限等),也会导致交易失败。买家需要改用其他有效的付款方式,才能购买您的应用或应用内商品。
检查付款是否通过
如果您的付款没有正确通过,您将不会收到您尝试购买的应用内购买。检查它是否通过网络上的 Play 商店应用或 Google Play:
使用 Play 商店应用:
1.在您的 Android 手机或平板电脑上,打开 Google Play 商店应用谷歌播放。
2.点按菜单菜单 接着 帐户。
3.点击购买历史记录以查看您的订单。
使用网络浏览器:
1.在您的计算机上,转到您的Google Play 帐户。
2.向下滚动到购买历史记录。
3.寻找应用内购买。
重启设备
有时重启设备有助于解决应用内购买问题。重新启动:
1.在您的移动设备上,按住电源按钮。
2.点击关机或重启(根据您的设备,此文本可能会有所不同)。
3.如果需要,再次按住电源按钮以重新打开设备。
4.等待设备启动备份。
5.重新打开应用程序或游戏并检查应用程序内购买是否已交付。
更新 Play 商店应用
当您运行最新版本的 Play 商店时,应用内购买效果最佳。要更新应用程序:
1.在您的 Android 手机或平板电脑上,打开 Google Play 商店应用谷歌播放。
2.点击菜单菜单 接着 设置 设置 接着 Build version或Play Store version。
构建版本或 Play 商店版本通常位于设置列表的底部。
3.该应用程序将更新,或通知您您的版本是最新的。
确保日期和时间正确
如果您最近更改了设备上的日期和时间,请确保日期和时间正确:
1.在 Android 手机或平板电脑上,打开设备的“设置”应用设置。
2.点按日期和时间。
3.查找“自动日期和时间”和“自动时区”并检查它们是否已打开或关闭。然后按照下面的相关步骤操作。
如果“自动日期和时间”和“自动时区”关闭
1.打开日期和时间以及时区设置。
2.等待几分钟,然后检查您的问题是否已解决。
3.如果不是,请尝试重新启动设备并再次检查。
如果打开“自动日期和时间”和“自动时区”
如果这两个设置都打开,则日期和时间可能不是您的问题。检查您的连接并重新启动您的设备,或尝试其他故障排除步骤。