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

当应用集成HealthKitSDK后,在华为手机上遇到登录授权错误码50063,问题根源是hmsrootcas.bks证书缺少052root信息。解决方案包括检查项目assets资源中的hmsrootcas.bks文件,或者手动集成包含052root的bks文件到项目中,然后重新编译项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、问题描述及操作

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

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

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

3、调用HuaweiApiAvailability#isHuaweiMobileServicesAvailable(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 最新技术资讯~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值