我要求在Android应用中购买某些功能。对于不支持应用内购买的国家/地区的用户,我希望免费提供此功能。
- 如何检查用户所在的Google Play国家/地区是否支持应用内购买?*
我尝试的问题:
1.似乎无法确定播放商店所在国家/地区。
1.检查BillingClient.BillingResponseCode
是否为BILLING_UNAVAILABLE
没有帮助,因为如果“用户设备上的Play商店应用已过期”或“Google Play无法向用户的支付方式收费”,也可能返回此响应。
BillingClient.startConnection
的onBillingSetupFinished
回调返回的BillingResult
中的debugMessage
似乎也没有帮助,因为它错误地显示“Google Play应用内计费API版本小于3”(对于不受支持的国家/地区)。(我尝试使用VPN访问中国。
1.如果用户位于其播放国家/地区以外的国家/地区或使用VPN,则检查用户的IP地址将给予错误的结果。
1.使用位置API需要位置权限,如果用户在国外,还会给予错误的结果。
1条答案
按热度按时间ddrv8njm1#
在最新版本的计费库(5.1)中,. BILLING_UNAVAILABLE表示:
用户设备上的Play Store应用已过期。
用户位于不受支持的国家/地区。
用户是企业用户,其企业管理员已禁止用户进行购买。
Google Play无法向用户的付款方式收费。
实现“com.android.计费客户端:计费-ktx:5.1.0”
所以,我希望这对你有帮助。
初始化
billingClient
对象后,查询是否启动连接。我最近开发了一个template的Google Play计费V5,你也可以看看.