HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程。该服务支持客户端和服务端两种开发形式,具体可以参考官方文档

上次,我们分享和总结了有关com.huawei.hmf.tasks.Task/应用服务器验证,验证购买token 失败等问题。今天小编再次将这段时间开发者们较为关注的一些集成应用内支付服务过程中的问题进行了汇总,并提出解决方案。大家按需取用吧!

目录

沙盒帐号已正确配置,却无法进入沙盒环境

哪些场景下会收到订阅关键事件通知cancel

InAppPurchaseData中的payOrderId 和orderId有什么区别?

如何理解新订阅在下一个周期才生效?

集成智慧屏帐号、应用内支付等功能,必须在华为智慧屏上进行调试吗?

1. 沙盒帐号正确配置了,但仍无法进入沙盒环境

沙盒环境测试允许开发者在接入应用内支付服务联调过程中无需真实支付即可完成端到端的测试。开发者可以在AppGallery Connect中配置测试帐号,并允许这些帐号执行沙盒测试。如果已经进入沙盒环境会有如下页面提示:

配置沙盒环境的必要条件:

一般而言,开发者需要配置沙盒测试环境帐号和沙盒测试版本。如果测试帐号正确配置了,那么就是沙盒测试版本有问题,比如更改了versionName,没有更改versionCode。

如果出现没有进入沙盒环境的问题,则可以调用isSandBoxActivated接口,打印出以下字段值:

通过以上方法,我们便可以分析出没有进入沙盒环境的具体原因。更多内容还可以参考官网

2. 哪些场景下会收到订阅关键事件通知cancle?

出现订阅事件cancle事件,一般有以下两种场景。

  1. 调用订阅撤销接口:在收到用户申诉误购买该订阅型商品或不需要该订阅型商品的情况下,开发者可以调用应用内支付服务器提供的撤销订阅接口终止服务,购买的订阅型商品立即消失,同时这笔订阅费用会立即发起返还

具体可访问官网

  1. 切换订阅立即生效:用户原订阅的剩余金额将折算成新订阅的天数,延长新订阅的有效期。目前这种切换效果的触发场景是原订阅的续费周期和即将更换的订阅续费周期相同。

具体可访问官网

  1. 两者区别:调用撤销接口会立刻进行退费;切换订阅立即生效场景会将当前订阅剩余的权益值转移到下个订阅产品中,不会形成退费。

3. InAppPurchaseData中的payOrderId 和orderId有什么区别?

  1. payOrderId是华为订单号,也就是支付成功后,华为侧生成的订单号。每一笔支付成功的订单都会生成唯一的订单号。

  2. orderId 是商户请求号,每次调用支付收银台接口,都会由华为服务器生成唯一的商户请求号,代表着每一次请求。

因此,如果调用华为收银台接口就会生成OrderId,而PayOrderId是支付成功才会生成的。

4. 如何理解新订阅在下一个周期才生效?

原订阅设置为到期状态,新订阅为待生效状态。新订阅会在原订阅的失效日期开始扣费并生效。目前这种切换效果的触发场景为:原订阅的续费周期和即将更换的订阅续费周期不同。

具体可访问官网

举个例子!

用户在2月22日购买订阅周期为1个月的A产品30元,3月10日购买订阅周期为3个月的B产品80元,那么可得知:

1)2月22日会扣A产品的30元,3月10日重新签约B产品,B产品暂不扣费。

2)A产品会被设定为到期状态,即A产品3月22日到期且不再扣费。

3)B产品在3月22日生效并扣费,下次扣费时间为6月22日。

5. 集成智慧屏帐号、应用内支付等功能,必须在华为智慧屏上进行调试吗?

智慧屏测试依赖HMS Core TV APK,如果没有该APK,那么对应集成的相关功能将无法使用。一般来说,华为智慧屏会预装该系统应用。这时有的开发者会想,能否在手机或者其他品牌电视上进行智慧屏帐号、应用内支付的功能测试?答案是否定的,原因有二:

  1. 由于华为安全和隐私规范,原则上该APK不对外暴露。

  2. HMS Core 部分能力依赖华为系统,那么在其他品牌电视上可能无法使用。6.2.0.300版本后,华为手机也无法正常使用。

欲了解更多HMS Core应用内支付服务详情,请参阅应用内支付服务官网

了解更多详情>>

访问华为开发者联盟官网

获取开发指导文档

华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

【FAQ】干货满满,接入HMS Core应用内支付服务过程中一些常见问题总结(2)来啦的更多相关文章

  1. 【FAQ】接入HMS Core应用内支付服务过程中一些常见问题总结

    HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程.开发者的应用集成IAP SDK后,调用IAP SDK接口,启动IAP收银台,即 ...

  2. 【FAQ】接入HMS Core推送服务过程中一些常见问题总结

    HMS Core 推送服务(Push Kit)是华为提供的消息推送平台,建立了从云端到终端的消息推送通道.开发者通过集成推送服务,可以向客户端应用实时推送消息,构筑良好的用户关系,提升用户的感知度和活 ...

  3. 【FAQ】接入华为应用内支付服务常见问题解答

    HMS Core应用内支付服务(In-App Purchases,IAP)为应用提供便捷的应用内支付体验和简便的接入流程.开发者的应用集成IAP SDK后,调用IAP SDK接口,启动IAP收银台,即 ...

  4. 【FAQ】应用内支付服务无法拉起支付页面常见原因分析和解决方法

    华为应用内支付服务(In-App Purchases)通过简便的接入流程为用户提供良好的应用内支付体验,然而在实际接入过程中,有一些开发者反馈测试时会无法正常拉起支付页面,下文将详细分析问题出现的5种 ...

  5. SDK接入(3)之iOS内支付(In-App Purchase)接入

    SDK接入(3)之iOS内支付(In-App Purchase)接入 继整理了Android平台的SDK接入过程.再来分享下iOS平台的内支付(In-App Purchase)接入,作为笔者在游戏开发 ...

  6. 别再问WiFi密码了,HMS Core统一扫码服务让手机一键联网

    现代生活离不开网络.在餐厅.商场等公共场所,手机连接WiFi一直是高频使用场景.虽然公共场所的免费WiFi越来越多,但网络连接过程却很麻烦.有的需要打开网页注册或点击广告链接才能上网,还有的要求下载特 ...

  7. 【FAQ】接入HMS Core推送服务,服务端下发消息常见错误码原因分析及解决方法

    HMS Core推送服务支持开发者使用HTTPS协议接入Push服务端,可以从服务器发送下行消息给终端设备.这篇文章汇总了服务端下发消息最常见的6个错误码,并提供了原因分析和解决方法,有遇到类似问题的 ...

  8. 【FAQ】接入HMS Core地图服务过程中常见问题总结

    HMS Core地图服务(Map Kit)给开发者提供一套地图开发调用的SDK,助力全球开发者实现个性化地图呈现与交互,方便轻松地在应用中集成地图相关的功能,全方位提升用户体验. 在日常工作中,我们会 ...

  9. 【FAQ】应用集成HMS Core部分服务出现“ 6003报错”情况的解决方法来啦

    背景 开发者在应用中集成HMS Core部分服务时,android sdk 以及flutter等跨平台sdk,会出现编译打包后,运行报6003错误码的情况.根据查询可以得知,错误代码 6003 表示证 ...

随机推荐

  1. Django orm Q查询补充

    Q的简单用法 from django.db.models import Q q = Q() q.children.append(("username", "lyj&quo ...

  2. Poco实体

    在Poco实体中,一般只有属性没有方法,这在软件设计中称为贫血模型, 在DDD领域驱动设计中,提倡充血模型,即你的Poco实体中,即有属性,也有操作属性的方法,[PS:注意这里说的是操作属性的方法,你 ...

  3. 开发中常用的几种 Content-Type

    开发中常用的几种 Content-Type application/x-www-form-urlencoded 浏览器的原生 form 表单,如果不设置,那么最终就会以 application/x-w ...

  4. Python中将字典转为成员变量

    技术背景 当我们在Python中写一个class时,如果有一部分的成员变量需要用一个字典来命名和赋值,此时应该如何操作呢?这个场景最常见于从一个文件(比如json.npz之类的文件)中读取字典变量到内 ...

  5. 为什么Java不支持运算符重载?

    另一个类似棘手的Java问题.为什么 C++ 支持运算符重载而 Java 不支持? 有人可能会说+运算符在 Java 中已被重载用于字符串连接,不要被这些论据所欺骗.与 C++ 不同,Java 不支持 ...

  6. 作为 务注册中心,Eureka比Zookeeper好在哪里?

    (1)Eureka保证的是可用性和分区容错性,Zookeeper 保证的是一致性和分区容错性 . (2)Eureka还有一种自我保护机制,如果在15分钟内超过85%的节点都没有正常的心跳,那么Eure ...

  7. Ribbon负载均衡能干什么?

    (1)将用户的请求平摊的分配到多个服务上 (2)集中式LB即在服务的消费方和提供方之间使用独立的LB设施(可以是硬件,如F5, 也可以是软件,如nginx), 由该设施负责把访问请求通过某种策略转发至 ...

  8. nginx简介&nginx基本配置和优化

    一.nginx简介 1.nginx的发展 Nginx是俄罗斯人编写的一款高性能HTTP和反向代理服务器.Nginx能够选择高效的epoll(Linux2.6内核).kqueue(FreeBSD).ev ...

  9. JS字符串格式化

    //字符串格式化String.prototype.format = function () { var values = arguments; return this.replace(/\{(\d+) ...

  10. Linux基础学习 | 目录及文件

    一.目录结构 Linux目录采用树形结构,以根目录/向下延伸呈一个倒置的树的形状. 每个目录下都有其相对应的子目录,而子目录中又有其子目录的存在,就像一棵树的树枝分叉,所有的目录层次结构分明,每个目录 ...