Google Play 结算系统入门指南

获取google退款订单(最新攻略) 前言 好消息,google退款订单终于返回orderId了,之前只有purchaseToken,很难做到关联,现在已经很容易做到关联了,但一定要用最新的api依赖包啊!!! 一.准备工作 创建开发者账号下服务账号 官方推荐服务端到服务端调用使用服务账号进行,步骤如下 1.在 Google Play 管理中心转到 API 访问权限页面。 2.点击服务帐号下的创建服务帐号。 3.按照页面上的说明创建您的服务帐号。 4.在 Google Developers Console 中创建服务帐号后,请点击完成。API 阅读详情

Google Play 结算系统入门指南

本文档面向完全不了解 Google Play 支付的开发者,主要介绍概念性知识,帮助您快速理解 Google Play 结算系统的核心概念和工作原理。

目录


1. 什么是 Google Play 结算系统

1.1 简介

Google Play 结算系统(Google Play Billing)是 Google 提供的一项服务,允许开发者在 Android 应用中销售数字商品和内容。

简单来说,就是:

  • 📱 用户在您的应用中购买虚拟商品
  • 💳 通过 Google Play 完成支付
  • ✅ Google 处理支付流程并分成
  • 🎁 您的应用向用户提供商品或服务

1.2 为什么使用 Google Play 结算系统

优势:

  1. 安全可靠 - Google 处理所有支付细节,符合 PCI 安全标准
  2. 全球覆盖 - 支持 130+ 个国家和地区,多种支付方式
  3. 用户信任 - 用户熟悉 Google Play 的支付流程
  4. 自动化 - 订阅自动续费,退款自动处理
  5. 统一管理 - 在 Google Play 管理中心统一管理商品和订单

适用场景:

  • 游戏内购买(金币、道具、皮肤等)
  • 应用内会员订阅(VIP、高级功能)
  • 数字内容(电子书、音乐、视频)
  • 去广告服务
  • 云存储空间

1.3 系统架构

用户
您的应用
Google Play 结算库
Google Play 商店
支付处理
您的后端服务器
Google Play Developer API

主要组成部分:

  1. 您的应用 - 展示商品,发起购买请求
  2. Google Play 结算库 - 应用中集成的 SDK,处理支付流程
  3. Google Play 商店 - 处理实际的支付交易
  4. 您的后端服务器 - 验证购买,发放商品(强烈推荐)
  5. Google Play Developer API - 服务器端验证和管理订单的接口

2. 核心概念

2.1 商品(Product)

商品是您在应用中销售的数字内容或服务。每个商品都有:

  • 商品 ID(Product ID):唯一标识符,如 com.example.coin_100
  • 名称:用户看到的商品名称,如 “100 金币”
  • 描述:商品的详细说明
  • 价格:各个国家/地区的定价

2.2 购买令牌(Purchase Token)

购买令牌是一个字符串,代表用户对某个商品的所有权。

  • 每次购买都会生成一个唯一的购买令牌
  • 用于验证用户是否真的购买了商品
  • 服务器端验证时必须使用购买令牌

类比: 就像电影票,凭票入场。购买令牌就是用户的"购买凭证"。

2.3 订单 ID(Order ID)

订单 ID 是 Google Play 生成的交易编号。

  • 每次支付都会生成一个订单 ID
  • 用于财务对账和退款管理
  • 用户的购买收据中会显示订单 ID

类比: 就像网购的订单号,用于追踪和管理交易。

2.4 使用权(Entitlement)

使用权表示用户有权使用某个商品或服务。

  • 一次性商品:购买后永久拥有使用权
  • 订阅商品:订阅期内拥有使用权,到期后失效

3. 商品类型

Google Play 支持两大类商品:一次性商品和订阅商品。

3.1 一次性商品(One-time Products)

一次性商品是用户购买一次就拥有的商品,又分为两种:

3.1.1 消耗型商品(Consumable)

特点:

  • ✅ 可以重复购买
  • ✅ 使用后会"消耗"掉
  • ✅ 消耗后可以再次购买

典型例子:

  • 游戏金币、钻石
  • 游戏道具(血瓶、复活卡)
  • 应用内货币
  • 一次性增益道具

购买流程:

用户 应用 Google Play 1. 点击购买 100 金币 2. 发起购买请求 3. 显示支付界面 4. 完成支付 5. 返回购买成功 6. 验证购买 7. 发放 100 金币 8. 消耗商品 消耗后,用户可以再次购买 用户 应用 Google Play

重要概念 - 消耗(Consume):

消耗型商品购买后必须"消耗",否则用户无法再次购买。

  • 未消耗:用户已购买但未消耗,无法再次购买
  • 已消耗:商品已使用,用户可以再次购买

类比: 就像买饮料,喝完(消耗)后才能再买一瓶。

3.1.2 非消耗型商品(Non-consumable)

特点:

  • ✅ 只能购买一次
  • ✅ 永久拥有
  • ❌ 不需要消耗
  • ❌ 不能重复购买

典型例子:

  • 游戏关卡解锁
  • 应用高级版升级
  • 去广告功能
  • 永久性功能解锁

购买流程:

用户 应用 Google Play 1. 点击购买"去广告" 2. 发起购买请求 3. 显示支付界面 4. 完成支付 5. 返回购买成功 6. 验证购买 7. 激活去广告功能 8. 确认购买 用户永久拥有,不能再次购买 用户 应用 Google Play

重要概念 - 确认(Acknowledge):

非消耗型商品购买后必须"确认",告诉 Google Play 商品已成功交付。

  • 如果 3 天内不确认,Google 会自动退款
  • 确认后,购买才算完成

3.2 订阅商品(Subscriptions)

订阅商品是按周期(如每月、每年)自动续费的商品。

特点:

  • 🔄 自动续订,直到用户取消
  • ⏰ 按固定周期收费
  • ✅ 需要确认购买
  • 📊 有多种状态(有效、已取消、宽限期等)

典型例子:

  • VIP 会员
  • 音乐/视频订阅
  • 新闻订阅
  • 云存储空间
  • 高级功能订阅

订阅周期:

  • 每周
  • 每月
  • 每季度(3 个月)
  • 每半年(6 个月)
  • 每年

4. 购买流程

4.1 完整购买流程

无论是一次性商品还是订阅,购买流程都包含以下关键步骤:

消耗型
非消耗型/订阅
1. 展示商品
2. 用户选择购买
3. 发起支付流程
4. 用户完成支付
5. 验证购买
商品类型?
6a. 发放商品 + 消耗
6b. 发放商品 + 确认
完成

4.2 步骤详解

步骤 1: 展示商品

应用查询并展示可购买的商品列表,包括:

  • 商品名称
  • 商品描述
  • 价格(自动本地化)
步骤 2: 用户选择购买

用户点击购买按钮,应用准备发起购买请求。

步骤 3: 发起支付流程

应用调用 Google Play 结算库,启动支付界面。

此时会发生:

  • Google Play 接管界面
  • 显示商品详情和价格
  • 显示支付方式选择
步骤 4: 用户完成支付

用户在 Google Play 界面中:

  • 确认购买
  • 选择支付方式
  • 完成支付

支付方式可能包括:

  • 信用卡/借记卡
  • Google Play 余额
  • 运营商代扣
  • PayPal
  • 其他本地支付方式
步骤 5: 验证购买

非常重要! 应用(最好是后端服务器)必须验证购买的真实性。

为什么要验证?

  • 防止欺诈
  • 确保购买合法
  • 避免被破解应用骗取商品

如何验证?

  • 使用 Google Play Developer API
  • 验证购买令牌的有效性
  • 检查订单状态
步骤 6: 发放商品并处理

消耗型商品:

  1. 发放商品给用户(如增加金币)
  2. 调用"消耗"接口
  3. 用户可以再次购买

非消耗型商品/订阅:

  1. 发放商品给用户(如激活 VIP)
  2. 调用"确认"接口
  3. 购买完成

4.3 购买状态

购买可能处于不同的状态:

状态说明应用操作
待处理支付尚未完成(如等待银行确认)等待,不发放商品
已购买支付成功,但未确认/消耗验证后发放商品
已确认非消耗型商品已确认无需操作
已消耗消耗型商品已消耗可以再次购买

5. 订阅系统

订阅是 Google Play 结算系统中较为复杂的部分,需要理解更多概念。

5.1 订阅配置

一个订阅商品可以有多种配置:

基础方案(Base Plan)

基础方案定义了订阅的基本属性:

  • 计费周期(每月、每年等)
  • 价格
  • 续订类型(自动续订或预付费)

一个订阅可以有多个基础方案,例如:

  • 月度订阅:每月 $9.99
  • 年度订阅:每年 $99.99(相当于每月 $8.33)
优惠(Offer)

优惠是在基础方案上的促销活动:

优惠类型:

  1. 免费试用 - 用户免费使用一段时间

    • 例如:7 天免费试用,然后每月 $9.99
  2. 介绍价格 - 首次订阅享受优惠价

    • 例如:首月 $0.99,之后每月 $9.99
  3. 促销价格 - 限时优惠

    • 例如:前 3 个月每月 $4.99,之后每月 $9.99

优惠示例:

0 5 10 15 20 25 30 35 40 45 50 55 60 免费试用 7 天 首月 $0.99 正常价格 $9.99/月 正常价格 $9.99/月 免费试用 介绍价格 订阅优惠示例

5.2 订阅生命周期

订阅在其生命周期中会经历多种状态:

开始免费试用
直接订阅
试用结束,开始付费
试用期内取消
自动续订成功
用户取消订阅
支付失败
支付成功
宽限期结束仍未支付
用户更新支付方式
保留期结束
到期
未订阅
试用期
有效订阅
已取消
宽限期
账号保留期
已过期
状态说明
状态说明用户权益自动续订
有效订阅订阅正常,用户已付费✅ 可使用✅ 会续订
试用期免费试用阶段✅ 可使用✅ 会续订
已取消用户已取消,但未到期✅ 可使用❌ 不续订
宽限期支付失败,Google 重试中✅ 可使用⏳ 尝试续订
账号保留期支付失败,等待用户更新❌ 不可使用⏳ 等待恢复
已暂停用户主动暂停订阅❌ 不可使用⏸️ 已暂停
已过期订阅已结束❌ 不可使用❌ 已结束
重要状态详解

1. 宽限期(Grace Period)

当用户的支付方式出现问题时(如信用卡过期),Google Play 会:

  • 继续让用户使用订阅内容
  • 在后台尝试重新扣款
  • 给用户时间更新支付方式

宽限期通常为 3-7 天

2. 账号保留期(Account Hold)

如果宽限期结束仍未支付成功:

  • 暂停用户的订阅权益
  • 保留用户的订阅数据
  • 继续尝试扣款

保留期通常为 30 天

3. 已取消 vs 已过期

  • 已取消:用户主动取消,但当前周期未结束,仍可使用
  • 已过期:订阅周期已结束,不能再使用

5.3 订阅管理

升级和降级

用户可以在订阅期间更改订阅计划:

升级示例:

  • 从"月度会员"升级到"年度会员"
  • 从"基础版"升级到"高级版"

降级示例:

  • 从"年度会员"降级到"月度会员"
  • 从"高级版"降级到"基础版"

处理方式:

操作生效时间费用处理
升级立即生效按比例退款旧订阅,收取新订阅费用
降级当前周期结束后生效不退款,下个周期按新价格收费
取消订阅

用户可以随时取消订阅:

  1. 用户在 Google Play 中取消订阅
  2. 订阅状态变为"已取消"
  3. 当前周期结束前,用户仍可使用
  4. 周期结束后,订阅过期

重要: 应用无法代替用户取消订阅,只能引导用户到 Google Play 管理页面。


6. 重要术语

6.1 技术术语

术语英文说明
Google Play 结算库Play Billing Library集成到应用中的 SDK,处理支付流程
Google Play 管理中心Play Console开发者管理应用和商品的后台
Google Play Developer API-服务器端验证和管理订单的 API
实时开发者通知Real-time Developer NotificationsGoogle 推送的订阅状态变化通知

6.2 业务术语

术语英文说明
商品 IDProduct ID商品的唯一标识符
购买令牌Purchase Token代表用户购买权的凭证
订单 IDOrder ID财务交易的唯一编号
使用权Entitlement用户使用商品的权利
消耗Consume消耗型商品使用后的操作
确认Acknowledge非消耗型商品/订阅交付后的确认

6.3 订阅术语

术语英文说明
基础方案Base Plan订阅的基本配置(周期、价格)
优惠Offer促销活动(试用、折扣等)
宽限期Grace Period支付失败后的宽限时间
账号保留期Account Hold宽限期后的数据保留期
升级Upgrade更换到更高级的订阅
降级Downgrade更换到更低级的订阅

7. 安全与验证

7.1 为什么需要验证

风险:

  • 黑客可能破解应用,伪造购买
  • 用户可能使用修改版应用骗取商品
  • 恶意用户可能重复使用购买凭证

解决方案: 在服务器端验证所有购买

7.2 验证流程

应用 Google Play 您的服务器 Google Play API 1. 发起购买 2. 返回购买令牌 3. 提交购买令牌 4. 验证购买令牌 5. 返回验证结果 6. 检查订单状态 7. 发放商品 8. 消耗/确认 应用 Google Play 您的服务器 Google Play API

7.3 验证要点

必须验证:

  • ✅ 购买令牌是否有效
  • ✅ 购买状态是否为"已购买"
  • ✅ 商品 ID 是否匹配
  • ✅ 订单是否已经处理过(防止重复发放)

服务器端验证的优势:

  • 🔒 更安全,客户端无法绕过
  • 📊 便于记录和审计
  • 🔄 支持跨平台(iOS、Web 等)
  • 💾 统一的数据管理

7.4 防止重复发放

问题: 同一个购买可能被多次提交

解决方案: 使用订单 ID 或购买令牌做幂等性检查

伪代码示例:

function handlePurchase(purchaseToken) {
    // 1. 检查是否已处理
    if (database.exists(purchaseToken)) {
        return "已处理过"
    }
    
    // 2. 验证购买
    if (!verifyWithGoogle(purchaseToken)) {
        return "验证失败"
    }
    
    // 3. 发放商品
    grantProduct(user, product)
    
    // 4. 记录已处理
    database.save(purchaseToken)
    
    return "成功"
}

8. 最佳实践

8.1 开发建议

  1. 始终在服务器端验证 - 不要仅依赖客户端验证
  2. 处理所有状态 - 包括待处理、失败、取消等状态
  3. 实现幂等性 - 防止重复发放商品
  4. 监听实时通知 - 及时处理订阅状态变化
  5. 提供清晰的用户界面 - 让用户了解购买内容和价格
  6. 测试所有场景 - 包括网络错误、支付失败等

8.2 用户体验

  1. 清晰的商品描述 - 让用户知道买的是什么
  2. 本地化价格 - Google Play 自动处理货币转换
  3. 订阅管理 - 提供订阅状态查询和管理入口
  4. 恢复购买 - 允许用户恢复之前的购买
  5. 友好的错误提示 - 支付失败时给出明确的提示

8.3 合规要求

  1. 遵守 Google Play 政策 - 不得销售违禁商品
  2. 明确的订阅条款 - 告知用户续费规则
  3. 提供退款支持 - 按 Google Play 政策处理退款
  4. 保护用户隐私 - 妥善处理购买数据

9. 常见问题

Q1: 消耗和确认有什么区别?

A:

  • 消耗(Consume):用于消耗型商品,消耗后可以再次购买
  • 确认(Acknowledge):用于非消耗型商品和订阅,确认商品已交付

Q2: 为什么必须在 3 天内确认购买?

A: Google 的政策规定,如果 3 天内不确认,会自动退款给用户。这是为了保护消费者权益。

Q3: 订阅和一次性购买哪个更好?

A: 取决于您的业务模式:

  • 订阅:适合持续提供服务(如会员、内容订阅)
  • 一次性购买:适合一次性商品(如游戏道具、功能解锁)

Q4: 如何测试购买流程?

A:

  1. 在 Google Play 管理中心添加测试账号
  2. 使用测试账号登录设备
  3. 测试购买不会真实扣费
  4. 测试订阅会加速到期(如月订阅变为 5 分钟)

Q5: 用户换设备后如何恢复购买?

A:

  • 非消耗型商品和订阅:自动恢复,只需查询购买记录
  • 消耗型商品:无法恢复(因为已消耗)

Q6: 如何处理退款?

A:

  • 用户在 Google Play 申请退款
  • Google 处理退款请求
  • 您会收到实时通知
  • 应用应撤销用户的使用权

10. 下一步

现在您已经了解了 Google Play 结算系统的基本概念,可以:

  1. 📖 阅读技术集成文档,了解如何在应用中实现
  2. 🎮 查看示例代码,学习最佳实践
  3. 🧪 创建测试商品,进行实际测试
  4. 🚀 发布您的第一个付费商品

相关资源:


总结

Google Play 结算系统是一个强大而完善的支付解决方案:

  • 🛡️ 安全可靠 - Google 级别的安全保障
  • 🌍 全球覆盖 - 支持全球用户和多种支付方式
  • 🔄 自动化 - 订阅自动续费,减少管理成本
  • 💰 灵活定价 - 支持多种商品类型和优惠策略

理解这些核心概念后,您就可以开始在应用中集成 Google Play 结算系统,为用户提供优质的付费体验!

9. 相关文档

Google Play结算防掉单方案 但是,如果缺少这一步,或者这一步失败,就会出现掉单,权益不到账问题,因此需要想办法解决。我们公司的产品主要是出海产品,使用的是Google Play支付,但是在上线以后,经常有客诉,说支付以后,权益没有到账,于是对整个Google支付体系做了研究了一下。这里有个步骤,就是在支付完了以后,Google服务会回调通知到服务端,因此只要在接收到的通知数据里面,能拿到用户ID就能进行绑定和权益发放。通过设置用户ID到这两个字段中的其中一个里面,可以在服务端收到通知的时候拿到,进行绑定,从而防止掉单情况发生。 阅读详情

相关推荐

最新 Google支付 Google Play 结算库 4.0 版:从创建定价、商品到测试、支付成功等步骤

使用 Google Play 结算系统,分为线上gp后台配置和代码billing集成,以下都以应用内产品为例。我做的是小说,应用内购买的是书币。 后台配置:前提能科学上网 设定定价,就是商品的定价: 按图所示建立价格, 我这里有4个价格。具体建立很简单 建立产品:一个产品对应一个定价,比如我这里7港币对应700书币。创建完后,如果没问题,一定要启用,不然app那边取不到数据,另外产品ID就是唯一,后面用在代码里取数据用的。 这里插入一个比较重要的点:需要为以后的测试分...

stone20011983的专栏 4547

Google play billing(Google play 内支付) 下篇

如官方文档billing_integrate.xml

春花无实的记录小站 4万+

解决Android应用内购报错:Google Play结算配置指南

在Android应用开发中,Google Play结算系统是实现应用内购的核心技术组件。其工作原理基于多层验证机制,包括应用包名注册、签名证书匹配和API权限校验。正确配置这些环节不仅能确保支付功能正常运行,还能避免常见的"未配置Google Play计费"报错。从技术实现来看,开发者需要重点关注签名密钥管理、结算库初始化和产品ID配置等关键点。尤其在混合开发环境或多渠道分发场景下,签名一致性验证成为支付流程能否成功的关键因素。通过合理使用BillingClient API和服务端验证机制,开发者可以构建安

weixin_29159127的博客 231

探索 Google Play Billing:开源实现与无限可能

探索 Google Play Billing:开源实现与无限可能 去发现同类优质开源项目:https://gitcode.com/ 在 Android 应用市场中,Google Play 商店无疑是主导者,而其中的 Google Play Billing 系统则是开发者进行应用内购买、订阅服务的关键工具。现在,我们有一个开源项目,由开发者 qiujiayu 提供的 ,它为开发者提供了一个更直观、更...

gitblog_00068的博客 489

Google Play上架:谷歌支付政策变更

Google Play上架:谷歌支付政策变更

专业解决各种上架过包问题,专业团队专业处理 956

扫地机器人全场景测试实战:从实验室到真实家庭的可靠性验证

本文深入探讨了扫地机器人从实验室到真实家庭的全场景测试方法,揭示了软硬件测试中的关键挑战。通过分析场景化测试的重要性,文章详细介绍了硬件耐久性、软件稳定性和环境适应性三大测试维度,并提供了真实家庭测试的实用方法论。消费者可重点关注清洁率、覆盖率等核心指标,同时了解测试工程师的私房建议,帮助选择更可靠的扫地机器人产品。

hhh00的博客 1077

服务端验证Google Pay订单的两种方式

服务端验证Google Pay订单的两种方式

Jason_HD的博客 2万+

LangChain + PlayWright实战:5分钟搞定网页自动化测试(附完整代码)

本文详细介绍了如何利用LangChain与PlayWright构建智能网页自动化测试系统。通过环境配置、核心架构设计、实战Agent构建及性能优化等步骤,开发者可以快速实现高效的Web操作自动化,提升测试效率。文章还提供了完整代码示例和典型问题解决方案。

weixin_27791839的博客 240

Google play billing(Google play 内支付)

转载自:http://blog.youkuaiyun.com/xyxjn/article/details/50331529 如billing开发文档所说,要在你的应用中实现In-app Billing只需要完成以下几步就可以了。   [html] view plain copy 第一,把你上篇下载的AIDL文件添加到你的工程里,

harryptter的专栏 2265

AnyLogic 建立谢林模型

AnyLogic 建立谢林模型说明创建一个新模型创建代理人群体和离散空间双击 people 前的图标,编辑 Person设置 Agent 的形状(Person)在模型中启用离散时间,实现代理行为点击 Person,进行编辑点击运行按钮效果图 说明 我们将把 Schelling 的模型实现为一个基于离散空间/离散时间的代理模型。空间代表一个城市,每个单元格代表一个房子。 agent 是人,是两种颜色:黄色和红色。 最初,人是随机分布在城市中的。人比房子少,所以总是有一个人可能会移动。 这个模型中的 agent

qq_45642410的博客 2577

python基础语法与数据结构

本文摘要: Python基础语法包含输入输出、函数、变量、数据类型及运算符等内容。输入函数input()获取键盘输入并以字符串存储,输出函数print()可格式化输出数据。函数通过def定义,可带参数和返回值,提高代码复用性。变量无需声明类型,可动态赋值。数据类型包括数字、字符串、布尔及复合类型,可通过type()查看。运算符包含算术、赋值等类型,其中复合赋值运算符如+=可简化运算。类型转换函数如int()、str()等可实现显式类型转换。这些基础语法构成Python编程的核心要素。

MM602388的博客 434

关于 Google Play 结算的常见问题解答

作者 / Mrinalini Loew, Group Product Manager我们致力于提供强大的工具和服务,帮助开发者建立和发展他们的业务,同时确保用户能够获得安全、可靠和顺畅的...

谷歌开发者 2748

结构设计3D拆件与骨架模型构建实战:基于Creo 8.0的5个高效建模技巧

本文详细解析了基于Creo 8.0的结构设计3D拆件与骨架模型构建实战技巧,涵盖5个高效建模方法,包括参数化驱动、曲面分割、多实体协同设计等。通过骨架模型的智能应用,设计效率可提升30%以上,特别适合复杂产品的结构设计。文章还提供了TWS耳机充电仓等实战案例,帮助工程师快速掌握工业设计中的核心建模技术。

weixin_30000735的博客 573

接入 Google Play 结算系统踩坑

官方接入地址 以 com.android.billingclient:billing:4.0.0 版本介绍: 一,准备工作 1,准备 Google play 开发者账号。 2,创建应用内商品(商品id,商品描述,定价)。 3,应用为发布状态之后,在 app 里面才能执行支付等操作。 就算是开发内测阶段,也必须上传一个 apk,审核通过到发布状态。 二,集成 1,连接 Google Play 服务 private val purchasesUpdatedListener = PurchasesUpd

迷路啦的博客 2675

eNSP常见故障处理

eNSP无法启动设备一直停在#井号的问题的解决方案?

lvshiliang123的博客 2万+

基于simulink的电气弹簧ES稳压控制模型仿真

若要补偿母线电压的谐波,需控制ES上的谐波,即在单闭环母线电压有效值控制的基础上,增加谐波抑制环节来进行谐波控制,现有的各种检测和抑制谐波的方法有采用模拟滤波器、傅里叶分析进行谐波分析、基于瞬时无功功率理论的方法等。当关键负载ZC为电流源型非线性负载时,电路原理图如图7所示,由于电流源型非线性负载可以等效为谐波电流源,关键负载电流ic便会含有谐波分量,导致输电线电流is和母线电压VS同样会含有谐波分量,导致供电质量的严重下降,对用电设备的正常工作造成影响。分别为流过线路阻抗、非关键负载、关键负载的电流,

FPGA/MATLAB学习教程/源码/项目合作开发 1633

java 服务端接入Google play 结算

google play 结算是用于应用内的虚拟商品支付(与google pay api是有区别的),发起支付与付款流程有app端完成。用户在app端支付完后,会返回购买token给app,app将对应参数传给服务端接口,服务端请求google api 查询购买产品(服务端需要提供给app端接口有2个:创建自己系统的订单、app端支付完后验证支付状态并处理购买交易。app端购买商品时传入商户订单id,使商户系统订单id与google 产生对应关系。2.用户选择商品,app请求服务端生成创建商户订单。

lxl_family的专栏 4265

CAPL学习之路-关键字

在capl中,关键字具有特殊的含义和用途,因此,不得将关键字用作变量或函数的名称 声明数据类型的关键字 可以用不同的关键字,声明或引用不同类型的数据 byte 声明一个字节的变量 word 声明两个字节的变量 dword 声明四个字节的变量 int 声明两个字节的整数 long 声明四个字节的变量 qword 声明八个字节的变量 char 声明一个字符串 float 声明一个浮点数,8个字节 double 声明一个浮点数,8个字节 定义一个结构体或枚举类型 struct struct Data { .

jasonj333 6108

海外Google Play-v4.0结算库流程

前言 最近看群聊,一位兄弟去面试安卓SDK岗位,面试时候被问到了google play结算流程。这位兄弟平时主要是负责国内的SDK渠道,海外SDK基本是没有了解。 结果面试过程一脸尴尬,面完后在群里也分享了一下面试过程,正好最近公司要更新一下google play 结算库 4.0,顺便我做个分享,希望群里哪位兄弟能看见 。 了解一下最近几个版本结算库的变化 Google Play 结算库 4.0 版 (2021-05-18) 当前最新版本,变更内容 添加了 BillingClient.queryPurc

北京朝阳区精神病院院长 3857

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

游戏 App 上架 Google Play 指南

因此,Google Play 既是一个应用分发平台,提供了开发者和用户之间的互动和交易环境,同时也是一个重要的分发渠道,帮助开发者将应用推向市场。总的来说,Google Play 通过一系列政策、技术手段和审核机制,严格限制应用的代码热更新,以保护用户的安全和体验。开发者应遵循这些政策,通过 Google Play 的官方渠道进行应用更新,确保应用的合规性和安全性。如果有任何疑问或需要进一步的信息,建议查阅 Google Play 的开发者政策或相关文档。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 1178

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

App 出海实践: Google Play 结算系统 | 开发者说·DTalk

本文原作者: 业志陈,原文发布于: 字节数组现如今,App 出海热度不减,是很多公司和个人开发者选择的一个市场方向。App 为了实现盈利,除了接入广告这种最常见的变现方式外,就是通过提供各类虚拟商品或者是会员服务来吸引用户付费了,此时 Google Play 结算系统 (Google Play's billing system) 就是 Android 端应用必须使用到的一个支付渠道了。Google...

Android开发者 2198

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

鸿蒙系统怎么安装 google play

鸿蒙系统怎么安装 google play

贵公子丶笔记 7万+

App 出海实践:Google Play 结算系统

在 Google Play Console 手动创建通过 Google Play Developer API 以代码的方式创建在 Google Play 中创建的商品都属于虚拟商品,每个商品代表的都是 App 给用户提供的一种权益,而每个商品都包含一个唯一标识,也即 ProductId,我们在业务上就需要根据 ProductId 的命名规则来定义商品所代表的具体权益类型一次性商品。用户通过单次付费获得的商品,属于买断制,对应 Google Play 结算库中的订阅型商品。

1 1751

Google Play 探索更好的用户选择结算服务

作者 / 产品管理副总裁 Sameer Samat移动应用改变了我们的生活——我们可以随时获取信息、享受娱乐生活,让我们彼此紧密联结,并为全球数十亿人创造了新的机会。在过去 10 年中,Google Play 有幸成为这场全球变革中的一份子。正因为与出色的开发者们密切合作,并通过大家的反馈持续改进,我们才能乘风破浪,不断进步。例如,基于合作伙伴的反馈和适应竞争的需要,我们...

Android开发者 325

Golang实现Google Play订阅结算的高可靠架构

Google Play订阅是一种强状态、异步、最终一致的支付服务模型,其核心在于订阅生命周期管理与远程验证的协同。理解订阅状态机(如in_grace_period_with_pending_cancellation)、幂等通知处理、本地事务先行+补偿验证机制,是构建可靠结算系统的基础。Golang凭借其并发控制、context超时、SQL事务与Redis原子操作能力,成为实现该场景的理想语言;但需规避无版本乐观锁、字符串硬编码状态、忽略X-Android-Developer-Notification-ID等

weixin_34121282的博客 341

Google Play结算库集成避坑指南:构建健壮的客户端-服务端支付体系

在移动应用商业化中,应用内支付是核心环节,其关键在于构建安全、可靠的支付验证体系。其基本原理是遵循“客户端发起,服务端裁决”的架构,将关键的购买凭证验证和业务逻辑置于受保护的服务端,以防止客户端篡改和伪造支付信息,保障交易的真实性与收入安全。这一技术方案的核心价值在于,它不仅实现了支付功能,更重要的是建立了信任边界,确保了数字商品交付的准确性和财务合规性。典型的应用场景包括各类Android应用的消费型商品(如游戏道具)和订阅服务(如会员)的售卖。本文聚焦于Google Play结算库的集成,深入解析了如何

weixin_33552698的博客 323
上一篇: Android 内存优化篇 - 使用profile 和 MAT 工具进行内存泄漏检测
下一篇: GooglePay: 一个基于 Google Play Billing Library 封装的 Android 支付库
darryrzhong
博客等级 码龄9年 34粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值