HarmonyOS 运动健康kit无法授权?

运动健康kit都申请通过了,clientID也配置了,但是一直报code码:1001500001。

Failed to request authorization. Code: 1001500001, message: Failed to check the fingerprint of the app bundle.Fingerprint verification error.
阅读 485
1 个回答

这个报错是集成Account Kit的常见问题,如果出现该错误,建议开发者可以按照下面几点进行排查:

潜在原因一:在工程中entry模块的module.json5文件中,新增metadata,配置name为client\_id,value为上一步获取的Client ID的值。错误示例1:client\_id在工程里面沒有配置。

错误示例2:client\_id的value写到string里面(比如:"value": "$string:clientId")也会导致授权报错。

错误示例3:client\_id的value里面配置成APP ID,而不是Client ID的值。

错误示例4:module.json5里面配置了多个client\_id。这个原则上只能配置一个,如果配置多个不会报错,但是只会读取第一个的value作client\_id。

潜在原因二:check下应用的签名证书指纹是否配置正确,可以按照文档里面的添加公钥指纹检查应用签名。

错误示例1:AGC上面根本就没有添加公钥指纹。

错误示例2:AGC上面直接添加证书指纹,这个是错误的,在HarmonyOS API 9及以上需要添加公钥指纹。

错误示例3:本地工程里面配置的证书和AGC上面应用的SHA256证书/公钥指纹上面的证书不是同一套。

备注:可以通过下面的方式查看手机上安装的该应用的公钥指纹。安装应用后执行(Windows):

hdc shell bm dump -n 包名 | findstr appId 

安装应用后执行(Mac):

hdc shell bm dump -n 包名 | grep appId 

将"appId"中包名下划线后的字符串拷贝到新文件中(文件名可自行定义,例如SHA.txt)再执行下面的命令行即可得到公钥指纹再与AGC上面配置的对比下看是否一致。

潜在原因三:网络问题,可以看下设备网络是否有问题,可以换个网络,比如切换到移动网络或者wifi下面再试下是否OK。

潜在原因四:在AGC上面,添加公钥指纹 (HarmonyOS API 9及以上)后,指纹有一定时间的缓存,不会立刻生效,建议配置完成后等半小时再尝试。

潜在原因五:检查下手机是否有修改系统时间,这个不建议修改。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
logo
HarmonyOS
子站问答
访问
宣传栏