集成HealthKit时因证书问题出现错误码50063的解决方案

博客 分享
0 306
优雅殿下
优雅殿下 2023-03-23 09:26:44
悬赏:0 积分 收藏

集成Health Kit时因证书问题出现错误码50063的解决方案

一、问题描述及操作

应用集成Health Kit SDK后,在华为手机上进行登录授权时,返回错误码50063。

1、查看相关错误码。‘50063’在Health Kit错误码中的描述是“安装的HMS Core APK版本不匹配,无法调用接口。”提供的解决方案是“请安装最新版本的HMS Core(APK)后,再调用接口”。

2、根据文档中提供的解决方案,卸载了手机设备中的HMS Core APK,重新更新到最新版本后,仍返回错误码50063。

3、调用HuaweiApiAvailabilityisHuaweiMobileServicesAvailable(Context context)接口,检测HMS Core (APK)在设备上是否成功安装和集成时,返回结果1,表示在设备上没有发现HMS Core(APK),预期结果应该返回0。

4、使用‘adb logcat > log.txt’获取完整日志,进行日志分析。

二、原因分析

在日志中筛选“HMSSDK_”,可以看到关键日志“E/HMSSDK_X509CertUtil: Not include alias 052root”。

根据日志显示,是因为hmsrootcas.bks证书中没有发现052root信息,导致校验失败,从而引起登录失败。正常情况下,如果使用Maven仓集成SDK时,此hmsrootcas.bks证书文件会在打包时自动放到apk的assets目录下,一般不会出现问题。

如果没有日志,也可以借助工具查看APK中的hmsrootcas.bks是否包含052root:

三、解决方案

1、检查项目工程中的assets资源文件目录中是否存在hmsrootcas.bks文件,如果存在的话,可以删除,在打包时hmsrootcas.bks会自动打包到apk中。

2、如果assets资源文件目录中不存在hmsrootcas.bks文件或删除后,仍出现此问题,可以手动集成包含052root信息的bks文件,具体操作如下:

1)访问链接,下载SDK文件。

2)解压下载的文件,根据以下路径找到bks文件,并集成到项目主工程下的assets中:hmssdk-eclipse-6.9.0.300\Security-ssl\assets。仅放置hmsrootcas.bks文件即可。

3)重新编译项目。

更多接入华为运动健康服务常见问题,请参见FAQ

了解更多详情>>

访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHubGitee

关注我们,第一时间了解 HMS Core 最新技术资讯~

posted @ 2023-03-23 09:25  HMSCore技术团队  阅读(0)  评论(0编辑  收藏  举报
回帖
    优雅殿下

    优雅殿下 (王者 段位)

    2017 积分 (2)粉丝 (47)源码

    小小码农,大大世界

     

    温馨提示

    亦奇源码

    最新会员