最新google play内购(com.android.billingclient) 教程 代码 封装 使用方法

推荐一款全平台广告聚合SDK【ADEasy】:https://blog.csdn.net/u013640004/article/details/105416193

对于google play内购,网上已经有很多教程了,但大部分都是旧的V3版。

这次我用的是较新的com.android.billingclient:billing:1.2 or 2.0,其优点是不需要key了,不需要IInAppBillingService.aidl了,不需要那一大堆Utils了。

码云项目的jitpack失败率太高了,所以放到了github,如果好用的话,记得点星哈
Github GoogleBillingV1.2.1(新版封装)
Gitee GoogleBillingV1.2.1(新版封装)

Gitee GoogleBillingUtilV1.1.7(单文件旧封装)
Gitee GoogleBillingV2.0.0(2.0版踩坑封装)

资源下载:
GoogleBillingUtilV0.0.3下载(V3API,适合Eclipse,官方已经弃用 )
com.android.billingclient:1.0.aar解压包
com.android.billingclient:1.2.aar解压包

* Eclipse如果想用最新版,可以下载上方的解压包,记住!必须要添加manifests里面的Activity。

* 注意:谷歌官方已经弃用v3以及以下版本的api了,无论是eclipse还是AndroidStudio的,都必须使用我基于billing:1.0及其以上版本封装的版本,具体的使用方法请点击上方的链接进行查看。

这是我对google play内购代码的二次封装,只需要简单的一步就能初始化,里面的接口功能齐全,具备完整的成功、失败、错误回调。里面包含详细教程。

然后这里我说一下过程中容易遇到的坑。

  1. 初始化失败,错误码:3,这是支付环境问题。
    有以下可能:用的是模拟器,三件套版本太旧,应用的支付环境没配置(接入谷歌服务,支付权限),vpn地域不支持。
    解决方法:a.先验证环境。在商店下载一个有内购的应用,看能否进行内购。b.如果别人的能进行内购之后,再次测试你的应用,看是否正常,来确认应用的支付环境是否正常。

  2. 能够查询价格,但无法购买,提示"商品无法购买"之类。
    这是基础配置问题,有以下可能:版本号与线上版本不对应,测试版本却不是测试账号(大概率),签名不对应。

  3. 能够查询价格,但无法调起支付都没有弹窗,错误码:3,报错:Error:In-app billing error: Null data in IAB activity resul。
    原因是没有给Google play商店弹窗权限,国内很多手机都有弹窗权限管理,特别是小米,如果没允许,是不会有任何提示,并且拦截了的。(这个问题在新版的gp商店已经不存在)

  4. 支付提示成功,但却走onQueryFail回调,并且返回的商品列表为null。
    这是因为你调错了方法,记得purchaseInApp是内购的,purchaseSubs是订阅的。查询的时候同理。另外查询的时候报错,很有可能是你setSKUS的时候传了一个空字符串,而不是空数组。

  5. 查询的时候返回的商品列表长度为0。
    setSkus的时候将内购sku和订阅sku的参数顺序弄错了,应该是第一个是内购的,第二个参数是订阅的。
    或者是商品还没有发布成功,需要等待一段时间(很有可能,新发布的商品是无论怎么查询还是购买,谷歌那边都是没有响应的)

  6. 我们检测到您的应用使用的是旧版 Google Play Developer API。自 2019 年 12 月 1 日起, 我们将不再支持此 API 的版本 1 和版本 2。请在该日期之前将您使用的 API 更新到版本 3。请注意,此变动与弃用 AIDL/结算库无关。
    升级到com.android.billingclient:billing库,弃用AIDL相关代码。
    后台也要弃用旧的校验接口。具体见谷歌官方文档。

  7. 错误码-1
    是用的是aar解压包,没有将manifests里面的activity配置到自己项目里。
    或者代码使用的是billing包,却还残留了aidl在项目里。

  • 17
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 35
    评论
### 回答1: package name: com.google.android.webview 是指Google提供的一个系统应用程序,用于在Android设备上运行和渲染WebView界面。WebView是一个Android平台上的组件,允许应用程序在自己的界面中嵌入浏览器功能。通过该包名,用户可以在Google Play商店找到和下载此应用程序。 Google的WebView应用程序是一个非常重要的工具,它为其他应用程序提供了在应用内显示网页的功能。许多应用程序,特别是浏览器和社交媒体应用,使用这个WebView组件来显示网页内容。在用户点击应用内的链接时,WebView会处理页面加载和渲染,实现无缝的浏览体验,同时保护用户的隐私和安全。 通过更新WebView应用程序,Google可以将最新的Web技术和安全更新带给设备上的所有应用程序。这样,用户不必等待整个操作系统的更新才能获得最新的浏览体验。另外,拥有独立的WebView应用程序还使Google可以更加灵活地向用户提供更新。 总之,在Android设备上,com.google.android.webview是一款由Google提供的系统应用程序,用于提供嵌入式浏览器功能的WebView组件。用户可以通过Google Play商店下载此应用程序,并通过及时的更新获得最新的Web浏览体验和安全性保障。 ### 回答2: Package name: com.google.android.webview 是指谷歌 Android 平台上的一个应用程序包。该应用程序包含谷歌为 Android 设备提供的内置 WebView 组件。 WebView 是一个能够在 Android 应用程序中嵌入浏览器功能的控件。通过 WebView,开发者可以在应用程序中显示网页内容,实现浏览器的基本功能,如加载网页、浏览网页、处理链接等。 com.google.android.webview 是一个在 Play 商店上提供下载的应用程序,用户可以通过下载安装该应用程序来更新 WebView 组件。WebView 组件的更新是由谷歌负责的,升级 WebView 可以使用户获得更好的浏览网页体验和更高的安全性。 通过维护 WebView 应用程序的更新,谷歌可以提供最新的浏览器功能和修复已知的漏洞,以确保用户的安全和隐私。 因此,com.google.android.webview 是一个非常重要的应用程序包,它可以提供给用户最新的 WebView 组件,并且能够不断改进用户在 Android 设备上的浏览网页体验。 ### 回答3: com.google.android.webview是一个在Google Play商店上可用的应用程序。它是由谷歌开发的一个用于Android系统的Web浏览器引擎。它可以提供更好的网页浏览体验,并允许用户在应用程序中加载和显示网页内容。com.google.android.webview可以作为系统级的组件,在Android设备上提供默认的Web浏览功能。它还提供了一些应用程序编程接口(API),允许开发人员在他们自己的应用程序中使用Web浏览器引擎的功能。通过使用com.google.android.webview,开发人员可以将网页内容嵌入到他们的应用程序中,从而创建出更丰富和交互式的用户体验。此外,com.google.android.webview还支持自动更新,这意味着用户不需要手动更新这个组件,他们总是可以使用最新的版本。总的来说,com.google.android.webview是一个非常有用的应用程序,它为用户提供了出色的Web浏览功能,并为开发人员提供了更多的灵活性和创造力来开发他们的程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值