【FAQ】接入华为应用内支付服务常见问题解答
HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程。开发者的应用集成IAP SDK后,调用IAP SDK接口,启动IAP收银台,即可实现应用内支付。
通过应用内支付服务,用户可以在应用内购买各种类型的虚拟商品,包括一次性商品(包括消耗型商品和非消耗型商品)和订阅型商品。小编将这段时间开发者们较为关注的一些集成应用内支付服务过程中的问题进行了汇总,并给出了解决方法,大家按需取用。
问题一、同一订阅组,连续包月未到期,切换到连续包年,在华为帐号中心管理订阅页面中取消订阅连续包月,为何连续包年订阅也会被一同取消?

原因分析:
从连续包月切换至连续包年后,产品处于未(待)生效状态,如果此时取消掉连续包月产品,那么会发送连续包月订阅取消通知事件,由于此时包年未生效,暂不会发送连续包年的取消订阅事件。
问题二、在华为智能手表上,调用收银台接口,提示“此应用需安装HMS Core相关组件的更高版本才能使用。是否立即更新”,点击更新,提示更新失败,错误102。

原因分析:
该错误码一般表示子Kit需要升级,但是手表应用市场没有相关的子应用上架,所以找不到安装包。在华为智能手表上集成JS SDK,需要升级的主要两个子Kit分别是JSB Kit,IAP Kit。目前JSB Kit已上架到应用市场,IAP Kit尚在上架排期中。
解决方法:
如果遇到该提示,我们可以使用规避方案,即提示用户去手动到手表应用市场下载最新的HMS Core APK,根据返回的700111错误码进行处理。
问题三、应用内支付服务提供Android和HarmonyOS SDK,支持的功能和设备有什么区别?
App通过集成IAP SDK,再调用IAP SDK接口启动IAP收银台,即可实现应用内支付。Android和HarmonyOS SDK都提供基础的应用内支付服务,包括订单管理、订阅、查看历史购买记录等;但HarmonyOS SDK目前不支持非PMS支付和延迟付款支付。在支持的设备方面,HarmonyOS SDK支持华为手机、华为手表和华为平板;Android SDK除了华为设备以外,还支持非华为手机和车机。
具体可参考下表:

问题四、为什么应用内支付4.0以上版本SDK 接口obtainOwnedPurchasesRecord 无法查询到2.0 sdk 接口productPay购买的PMS非消耗性商品订单?
原因分析:
应用内支付4.0以上版本和2.0版本数据不在同一个数据库上,且暂时无法合并,所以使用新接口的无法查询到之前的订单。
解决方法:
如果应用上有展示历史数据的需求,可以仅展示集成4.0之后版本 sdk的数据,如22年1月份集成更新,则可提示本页面只可查询22年1月份之后的购买数据。(参考)
开发者可将之前2.x版本下单的购买数据(从应用服务侧获取)和 4.0之后版本sdk(从IAP SDK接口)获取到的数据进行整合处理。(推荐)
问题五、 华为智慧手表上,已经进入到沙盒测试环境中,拉起收银台后支付二维码不显示,提示请求参数错误。

原因分析:
目前扫码类的支付方式都暂时不支持沙盒测试,比如手表,智慧屏等都是通过扫码方式进行支付的,所以会出现相应错误提示。
解决方法:
登录非沙盒帐号(或者删除沙盒帐号),触发现网环境进行测试。
了解更多详情>>
访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHub、Gitee
关注我们,第一时间了解 HMS Core 最新技术资讯~
【FAQ】接入华为应用内支付服务常见问题解答的更多相关文章
- 接入华为应用内支付,验证购买Token接口,返回“rights invalid”
有海外开发者向我们提问:我在应用中集成了华为应用内支付SDK(测试购买订阅型商品),按照文档说明,在服务器去请求验证购买Token接口的时候返回了{"responseCode":& ...
- 【FAQ】应用内支付服务无法拉起支付页面常见原因分析和解决方法
华为应用内支付服务(In-App Purchases)通过简便的接入流程为用户提供良好的应用内支付体验,然而在实际接入过程中,有一些开发者反馈测试时会无法正常拉起支付页面,下文将详细分析问题出现的5种 ...
- 【FAQ】接入HMS Core应用内支付服务过程中一些常见问题总结
HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程.开发者的应用集成IAP SDK后,调用IAP SDK接口,启动IAP收银台,即 ...
- 【FAQ】干货满满,接入HMS Core应用内支付服务过程中一些常见问题总结(2)来啦
HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程.该服务支持客户端和服务端两种开发形式,具体可以参考官方文档 上次,我们分享和总 ...
- 【FAQ】华为帐号服务报错 907135701的常见原因总结和解决方法
很多开发者在接入华为帐号服务时,经常会出现907135701的报错.根据官网文档说明,错误码907135701表示: 这个错误码在安卓和鸿蒙上都会出现,导致该报错的原因有很多,开发者可以按照下面几点进 ...
- SDK接入(2)之Android Google Play内支付(in-app Billing)接入
SDK接入(2)之Android Google Play内支付(in-app Billing)接入 继上篇SDK接入(1)之Android Facebook SDK接入整理完Facebook接入流程之 ...
- SDK接入(3)之iOS内支付(In-App Purchase)接入
SDK接入(3)之iOS内支付(In-App Purchase)接入 继整理了Android平台的SDK接入过程.再来分享下iOS平台的内支付(In-App Purchase)接入,作为笔者在游戏开发 ...
- IOS IAP APP内支付 Java服务端代码
IOS IAP APP内支付 Java服务端代码 场景:作为后台需要为app提供服务,在ios中,app内进行支付购买时需要进行二次验证. 基础:可以参考上一篇转载的博文In-App Purcha ...
- Google play billing(Google play 内支付) 上篇
写在前面: 最近Google貌似又被全面封杀了,幸好在此之前,把Google play billing弄完了,现在写篇 博客来做下记录.这篇博客一是自己做个记录,二是帮助其他有需要的人.因为现在基本登 ...
随机推荐
- UiPath文本操作Get Full Text的介绍和使用
一.Get Full Text操作的介绍 使用Get Full Text(获取全文本 )屏幕抓取方法从指示的UI元素中提取字符串及其信息 二.Get Full Text在UiPath中的使用 1. 打 ...
- UiPath文本操作Set Text的介绍和使用
一.Set Text的介绍 向输入框/文本框写入文本的一种操作 二.Set Text在UiPath中的使用 1.打开设计器,在设计库中新建一个Sequence,为序列命名及设置Sequence存放的路 ...
- p_b_p_b 杂题选讲
[ARC119F] AtCoder Express 3 [ARC117F] Gateau 考虑二分答案,对前缀和建差分约束 \(\text{check}\) ,但是用 \(\text{spfa}\) ...
- 聊聊 Netty 那些事儿之 Reactor 在 Netty 中的实现(创建篇)
本系列Netty源码解析文章基于 4.1.56.Final版本 在上篇文章<聊聊Netty那些事儿之从内核角度看IO模型>中我们花了大量的篇幅来从内核角度详细讲述了五种IO模型的演进过程以 ...
- String长度限制?
String我们在开发和学习中会经常用到,但对String类型的取值范围我们并不明确. String底层是char数组,并未标明长度限制.java中可以对数组指定长度,如果不指定就以实际元素来指定 p ...
- RapidEye快鸟、SPOT卫星遥感影像数据
目前地理遥感生态网平台已发布高分辨率卫星遥感影像数据. 数据样例:百度云下载链接:https://pan.baidu.com/s/17ofPwpDM3OCHnE-LuhvUp 提取码:i0m4 ...
- 【cartogarpher_ros】一: ros系统下的快速安装
Cartographer是一个跨多个平台和传感器配置提供 2D 和 3D实时同步定位和映射 ( SLAM ) 的系统. 使用Cartographer有Ros集成环境和无Ros环境,对于新手快速入门,推 ...
- thymeleaf实现前后端数据交换
1.前端传数据后端接收: 用户在登录界面输入用户名和密码传给后端controller,由后端判断是否正确! 在html界面中要传递的数据name命名,通过表单的提交按钮会传递给响应的controlle ...
- 难道ERP"死了",中台"凉了",低/无代码要称王了?
业内有一种说法,ERP经历了20多年的发展,其理念已经行不通,跟不上时代.后起之秀"中台"经历了崛起.走红.被传唱等阶段.并且已经冷却下来.此外,随着市场的不断变化,"低 ...
- jdbc 12: 悲观锁
jdbc连接mysql,简单演示行级锁 通过debug模式进行演示 在Test1程序设置断点,让程序1,查询并锁定数据,且程序不执行完(此时停在debug断点处) 这时启动Test2程序,去修改已经被 ...