HMS Core利用内领取服务(In-App Purchases,IAP)为利用提供便捷的利用内领取体验和简便的接入流程。开发者的利用集成IAP SDK后,调用IAP SDK接口,启动IAP收银台,即可实现利用内领取。通过利用内领取服务,用户能够在利用内购买各种类型的虚构商品,包含一次性商品(包含消耗型商品和非消耗型商品)和订阅型商品。利用内领取服务反对客户端和服务端两种开发模式,具体能够参考以下官网文档:
https://developer.huawei.com/…
在日常工作中,咱们会收到开发者们留言的无关IAP集成的常见问题,这里进行一些分享和总结,心愿为其余遇到相似问题的开发者提供参考——
- com.huawei.hmf.tasks.Task的应用问题。
Task<TResult>是HMS Core SDK 底层框架的一个根底抽象类,通过实现Task类外面的相干形象办法。比方增加一个或者多个监听器,当工作胜利实现时该监听器被调用,当增加多个监听时,依照增加时的顺序调用,该调用在主线程中执行。
因为它曾经集成在工程gradle包当中,所以间接用就能够,不须要从新创立申明。咱们能够在Project工程中导入的 gradle文件中找到:
开发者也能够参考以下文档解决问题:
https://developer.huawei.com/…
- InAppPurchaseData 参数中没有accountFlag是否失常?
InAppPurchaseData 参数中没有accountFlag的问题,依据利用内领取服务官网文档对于InAppPurchaseData的参考API:
https://developer.huawei.com/…
InAppPurchaseData JSON类型用于保留用户购买信息,包含消耗型商品、非消耗型商品以及订阅型商品。其中的参数accountFlag 是非必选参数、可选字段,非固定返回,满足应用AppTouch利用才会有这个返回值。
- 文档 createPurchaseIntentWithPrice 的 onFailure 中 参数(Exception e)的判断(e instanceof IapApiException) 不成立。
首先须要确认设施和集成环境信息(最好更新到最新版本):HMS Core版本号、集成的SDK的版本号、设施是手机还是智慧屏。
而后依据官网文档60055错误码的正文,个别示意用户没有批准领取协定,开发者能够从申请接口中返回的IapApiException中获取到一个Status对象,Status中蕴含IAP协定页面,利用可应用Status的startResolutionForResult办法来启动协定页面。
导致该问题的起因可能还有以下几个方面:
(1)网络问题,网络异样导致接口获取失败。
(2)是否正确援用了 IapApiException。
(3)领取时是否有弹窗,如果没有弹窗须要开启设施 “后盾弹出界面”权限,设置如下:找到 HMS Core 利用详情页– 权限治理–“后盾弹出界面”–抉择“始终容许”,从新测试。
(4)如果是代码问题,请具体参考开发者联盟官网Demo实现和测试。Demo下载地址:
https://developer.huawei.com/…
- 应用服务器验证,验证购买token 失败。
首先,呈现“验证购买token 失败”提醒,请具体参照 “获取利用级AT”文档的每一个步骤,查看获取的AT是否是利用级AT。获取利用级别AT地址文档:
https://developer.huawei.com/…
而后再将获取的利用级AT封装,在申请头header中从新构建 authorization,具体能够参考公共阐明的局部文档:
https://developer.huawei.com/…
欲了解更多利用内领取服务详情,请参阅:
https://developer.huawei.com/…
华为开发者联盟官网
获取开发领导文档
参加开发者探讨请到Reddit社区
下载demo和示例代码请到Github
解决集成问题请到Stack Overflow
理解更多详情>>
拜访华为开发者联盟官网
获取开发领导文档
华为挪动服务开源仓库地址:GitHub、Gitee
关注咱们,第一工夫理解 HMS Core 最新技术资讯~