简单 3 步配置 Google Play Billing | 系列分享

   日期:2024-12-28     作者:wx4ox       评论:0    移动:http://3jjewl.riyuangf.com/mobile/news/11485.html
核心提示:作者 / Caren Chang,Engineer销售数字内容是许多应用的主要营收渠道。具体形式包括销售应用内的特定商品 (如游戏金币) 以及订阅

作者 / Caren Chang, Engineer



销售数字内容是许多 应用的主要营收渠道。具体形式包括销售应用内的特定商品 (如游戏金币) 以及订阅计划 (比如允许用户在限定时间内访问高级功能)。Google Play Billing 作为一个数字内容销售的工具和服务的集合,可以帮助开发者在 Android 应用中销售线上商品。


本文将从基础知识开始,带大家逐步深入,详细了解 Google Play Billing 3,及其用例和最佳实践。


首先,我们来熟悉一下 Google Play Billing 的一些关键组件。

了解了 Google Play Billing 的关键组件之后,我们将从头介绍如何设置环境并开始在 Android 应用中销售商品。


1. 设置 Android 应用以使用 Google Play Billing 开发库


第一步,也是最重要的一步,是设置 Android 应用以使用 Google Play Billing 开发库。


app/build.gradle 文件中添加以下依赖关系,在应用中实现 Google Play Billing:


添加库依赖关系后,为应用构建一个发布版 ,并将其上传到 Google Play 管理中心。



2. 添加应用内产品


上传 后,可以使用 Google Play 管理中心开始添加要在应用中销售的应用内产品。在 "商店发布 (Store Presence)" 下,有一个设置应用内产品的部分。在这里可以设置两种类型的商品:

创建新的托管产品和订阅时,需要输入商品的产品 ID (Product ID) 或 SKU。这个产品 ID 后续将在应用代码中使用,我们稍后会讲到。在创建托管产品之前,应慎重规划产品 ID。产品 ID 在应用中必须唯一,并且在创建后无法更改或重复使用。

为了使更快、更简单,您可以将您的 Google 帐号添加到 Google Play 开发者帐号的 " (License )" 中。这样,只要包名称与 Play Store 中的 匹配,就可以使用调试版本和调试签名进行。




3. 检查设置是否成功


在 Play 管理中心中设置好产品后,您可以在应用中查询产品的详细信息来检查设置是否成功。


如果一切顺利,您将会看到刚刚添加进 Play 管理中心的产品的详细信息!



4. 接入 Google Play Billing 开发库


下一步,便是如何在您的 Android 应用中接入 Google Play Billing 开发库。


本文将以一次性购买的生命周期为例,即在应用中销售数字商品及授予用户的过程。如果您在应用中提供了订阅功能,您也可以阅读往期文章订阅取消后的那些事儿——恢复订阅和重新订阅了解更复杂生命周期的订阅流程。


一次性产品可以是消耗品,也可以是非消耗品。消耗品意味着用户可以再次购买。例如,如果您的游戏允许用户购买金币,您可以将金币做成消耗品,让用户可以多次购买。非消耗品意味着用户只能购买一次,典型示例是包含额外应用内功能的升级包。


Google Play 管理中心配置应用内产品后,其销售过程如下:

让我们逐步分析这一过程。

1. 设置 BillingClient - BillingClient 类让您的应用可以与 Play Billing Library 进行通信。您的应用需要做的第一件事是调用 startConnection()Google Play 建立连接。


在实际环境中连接是有可能中断的,所以您的应用还必须重写 onBillingServiceDisconnected() 回调来处理重新连接,确保应用在发出任何进一步请求之前已与 Google Play 连接。



2. 获取用户的既有购买记录 - 成功设置 BillingClient 后,您的应用现在可以调用 queryPurchases() 来查询用户先前的购买记录。



3. 呈现待售产品 - 在本文的前半部分我们谈到了如何在 Google Play 管理中心中设置产品以及如何在应用中查询这些产品。在调用 querySkuDetailsAsync() 获取每个产品的 SkuDetails 后,即可使用这些信息设置对应的界面。



4. 启动购买流程 - 当用户点击产品进行购买时,您的应用需要带上产品 SkuDetails 来调用 launchBillingFlow(),从而向用户展示 Google Play 购买界面 (如下图所示)。 



5. 处理购买结果 - 在用户退出 Google Play 购买界面时 (点击 "购买" 按钮完成购买,或者点击 "返回" 按钮取消购买),onPurchaseUpdated() 回调会将购买流程的结果发送回您的应用。然后,根据 BillingResult.responseCode 即可确定用户是否成功购买产品。如果 responseCode == OK,则表示购买已成功完成。



onPurchaseUpdated() 会传回一个 Purchase 对象列表,其中包括用户通过应用进行的所有购买。每个 Purchase 对象都包含 skupurchaseTokenisAcknowledged 以及其他很多字段。使用这些字段,您可以确定每个 Purchase 对象是需要处理的新购买还是不需要进一步处理的既有购买。



6. 和确认购买 - 使用 Play Billing Library 3.0 时,您的应用需要确认购买成功才能完成购买流程。如果您的应用未在 72 小时内确认购买,则用户会自动收到退款,并且 Google Play 会撤消该购买交易


如果您的应用包含服务器组件,您应在验证成功后再确认购买。我们强烈推荐开发者对所有的应用内购买进行验证。请查看本指南了解有关打击欺诈性购买的更多信息。



在对购买进行验证之后,您还需要对其进行确认。



7. 授予用户产品 - 完成上述步骤后,您的应用就可以向用户授予他们购买的应用内产品了!


如果您想查看 Google Play Billing 开发库的资源,可以在此处访问官方文档。我们还提供了一些示例,演示了实现 Billing 库的最佳实践。本文中的代码示例可以在 GitHub 上获取。



如果您的应用目前尚未使用 Play Billing Library 3,务必查看我们的迁移指南,将您的应用迁移到最新的 Play Billing Library。




推荐阅读


nback="static" style="line-height:0;top:auto;left:auto;right:auto;bottom:auto">
nback="static" style="line-height:0;top:auto;left:auto;right:auto;bottom:auto">
nback="static" style="line-height:0;top:auto;left:auto;right:auto;bottom:auto">

 点击屏末  | 即刻通过 Google Play 开启成功出海之旅



 
特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。

举报收藏 0打赏 0评论 0
 
更多>同类最新资讯
0相关评论

相关文章
最新文章
推荐文章
推荐图文
最新资讯
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号