华为 HMS Core 实现 IAP 内购功能的几个备注点

开启 IAP

  1. iap开启,除了要在AppGallery Connect项目中开启应用内支付服务 API外,

  2. 还需要激活“盈利”下的应用内支付服务的配置以获得签名验证公钥
    这个公钥是用来验证支付回调是否合法的,类似web中用几个关键参数按顺序加时间和约定的key做md5的签名。没有开启这个的话会报6002错误。如果不需要验证,可以不使用公钥。

  3. 除了这两个地方,还需要在AppGallery Connect应用中运营页面里配置商品,特别需要注意到地方是配置完商品还需要激活,一定要点激活才行。

上面两个地方是在 AppGallery Connect 的项目中设置的,而最后这个是在 AppGallery Connect 的应用中设置的。

密钥指纹

如果使用了上传密钥应用签名密钥分开的配置,那么debug版本也需要应用签名,否则HMS 的 api 请求会报6003错误。如果签名后依然还是6003,那么把应用签名证书上传证书的 SHA-256指纹都添加到AppGallery Connect项目设置下的 SHA256证书指纹中。因为按照流程,你本地的签名用的应该是上传证书,需要把它的指纹也加入。

地区

测试时应用不需要上传,只需要把应用的信息都配置好,包括发行的国家地区。如果选择中有中国大陆,那需要提供软著等信息,如果没有可以去掉不在中国大陆发行。

测试手机上的应用商店国家地区要对应发行的地区,如果有地区没有发行而应用商店正好设置为该地区(就是中国),那需要把应用商店的国家改成选择发行的国家

最后

华为 HMS 的配置虽然零散,开放资料也不够直观全面,但是其实坑还是比较少的。