3

我删除了所有与 gms 相关的 api 并添加了 hms 的。我的调试版本运行良好,我的项目根目录中有 agconnect 文件。但是如果我直接从 appGallery 下载我的应用程序,我的 hms 核心相关 api 将无法正常工作。(如 pushkit 和 iap)。当我的应用程序的发布版本正在运行时,我检查了控制台,我看到了这个错误:

 com.huawei.hms.common.ApiException: 6003: certificate fingerprint error

有两种 SHA-256 指纹代码:

在此处输入图像描述

我是如何构建应用程序的?

与gms版本几乎相同。我选择了 Build->Generate Signed Bundle or Apk 菜单,并使用我现有的密钥库文件进行构建,该文件也用于 Google Play,然后上传到 AppGallery connect。没有错误或警告。

我该如何解决?

4

2 回答 2

2

检查appid是否与AppGalleryConnect上的appid相同。仔细检查您的配置。此外,检查证书指纹。确保JSON文件存放在项目级目录而不是应用级目录,仔细检查以下各项配置过程。

1.在申请相关服务时检查指纹证书是否配置正确。打开应用的APK文件,解压META-INF目录,获取目录下的CERT.RSA文件,执行keytool -printcert -file META-INF/CERT.RSA命令打印签名证书信息.

2.HMS Core(APK)会缓存签名文件。您需要在您设备的Apps页面找到HMS Core (APK)并清除缓存,重启您的应用程序,然后再次执行之前的操作。

3.登录AppGallery Connect,点击我的应用。在出现的页面,进入开发 > 项目设置 > 常规,检查SHA-256证书指纹是否与步骤1中的指纹一致。

4.第三方访问,查看appid的值。

<meta-data android:name="com.huawei.hms.client.appid" android:value="Your appid"/> 

或者

<meta-data android:name="com.huawei.hms.client.appid" android:value="appid=Your appid"/>

此外,建议您升级 SDK。

希望这可以帮助您解决问题。:)

于 2021-01-27T08:27:35.370 回答
0

6003错误是由于证书指纹配置不一致导致的。检查以下项目:

  1. 确保已配置证书指纹,并且本地客户端打包签名的证书与AppGallery Connect中配置指纹的证书相同。生成签名证书

  2. 检查证书中的指纹条目。建议您使用单个条目。

  3. 如果配置指纹后运行本地客户端仍然出现6003错误,则默认运行调试证书。您需要手动进入设置 > 应用程序 > 应用程序 > 搜索(华为移动服务)清除缓存和数据,关闭应用程序,然后重试。

于 2021-01-27T08:11:11.467 回答