【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error

游戏技术分享
发布于 2025-6-13 16:40
浏览
0收藏

【关键词】

鸿蒙应用内支付,IAP

【问题描述】

集成华为鸿蒙​应用内支付服务​,调用createPurchase拉起支付界面失败,返回BusinessError 1001860001: System internal error。

【问题分析】

在开发者联盟上查到错误码1001860001对应的描述和解决办法,如下

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.1.png

检查工程“entry/src/main/module.json5”的module节点下client_id、app_id属性的与AGC后台是否一致,是否使用的手动签名,AGC后台是否​开启和激活应用内购买服务​,以及​公钥指纹​添加是否正确。

经检查,以上信息均正确,再查看日志。

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.2.png

从日志看是productId不正确导致的。检查代码,productId是有传值的。

把createPurchase接口的入参PurchaseParameter打印出来,发现是productId传的是number类型。

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.3.png

写法大致如下,json字串中productId实际传的是number类型的数据,as PayData仅是告诉编辑器param.productId这个参数是string类型,不会校验数据类型也不会做数据类型转化。

所以pay方法定义的productId参数是string类型,pay接收时仍然不会报错,但实际传输的数据类型是number。

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.4.png

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.5.png

【鸿蒙游戏技术分享 第6期】华为鸿蒙游戏无法拉起支付页面,返回1001860001,System internal error-鸿蒙开发者社区6.6.png

【问题解决】

修改数据类型,问题解决。


更多问题可关注:

鸿蒙游戏官方网站:​​https://developer.huawei.com/consumer/cn/games/​

公开课:​​华为开发者学堂​

分类
收藏
回复
举报
回复
    相关推荐