集成Health Kit时因证书问题出现错误码50063的解决方案
一、问题描述及操作
应用集成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
了解更多详情>>
访问华为开发者联盟官网
获取开发指导文档
华为移动服务开源仓库地址:GitHub、Gitee
关注我们,第一时间了解 HMS Core 最新技术资讯~
集成Health Kit时因证书问题出现错误码50063的解决方案的更多相关文章
- JavaWeb项目中获取对Oracle操作时抛出的异常错误码
最近在项目中碰到了这么一个需求,一个JavaWeb项目,数据库用的是Oracle.业务上有一个对一张表的操作功能,当时设置了两个字段联合的唯一约束.由于前断没有对重复字段的校验,需要在插入时如果碰到唯 ...
- [转]安装SharePoint 2013时安装AppFabric失败(错误码:1603)
转自:http://blogs.technet.com/b/praveenh/archive/2013/02/22/sharepoint-2013-prerequisites-fails-with-m ...
- Dev环境中的集成测试用例执行时上下文环境检查(实战)
Dev环境中的集成测试用例执行时上下文环境检查(实战) Microsoft.NET 解决方案,项目开发必知必会. 从这篇文章开始我将分享一系列我认为在实际工作中很有必要的一些.NET项目开发的核心技术 ...
- 自己写的驱动用CreateFile打开时错误码返回1的问题
就像题目上说的,今天在写一个例子代码时遇到了这个问题,下面是当时驱动层和应用层的代码: #include <ntddk.h> #define BASE_CODE 0x800 #define ...
- 【FAQ】申请Health Kit权限的常见问题及解答
华为运动健康服务(HUAWEI Health Kit)提供原子化数据开放,用户数据被授权获取后,应用可通过接口访问运动健康数据,对相关数据进行增.删.改.查等操作.这篇文章汇总了申请开通Health ...
- 微信支付v3发布到iis时的证书问题(转)
本文纯粹转载(原地址:微信支付v3发布到iis时的证书问题 ) 一开始报“出现了内部错误” 解决方法是 方法一 var cer = new X509Certificate(certpath, pass ...
- 访问平安银行网站时出现证书问题 NET::ERR_CERT_SYMANTEC_LEGACY
访问平安银行网站时出现证书问题 NET::ERR_CERT_SYMANTEC_LEGACY 查了资料说是 Google 取消了对 Symantec SSL 的信任,因为 Symantec 干了坏事1. ...
- How to disable SSL certificate checking with Spring RestTemplate?(使用resttemplate访问https时禁用证书检查)
How to disable SSL certificate checking with Spring RestTemplate?(使用resttemplate访问https时禁用证书检查) **** ...
- java在访问https资源时的证书信任问题
java程序在访问https资源时,出现报错 sun.security.validator.ValidatorException: PKIX path building failed: sun.sec ...
- HTTP-java访问https资源时,忽略证书信任问题,代码栗子
java程序在访问https资源时,出现报错 sun.security.validator.ValidatorException: PKIX path building failed: sun.sec ...
随机推荐
- C++ push_back()函数应用
最近在学习Opencv,用C++写程序,做了一个虚拟画笔的项目,即通过摄像头采集视频图像信息,识别视频中的画笔,并画笔在空中的划痕显示在视频图像上.在进行到划痕显示的,由于视频是实时采集的,检测到的画 ...
- 访问提示'staticfiles' is not a registered tag library. Must be one of: admin_list admin_modify admin_urls cache i18n l10n log static tz
解决方法 前端模板中{% load staticfiles %}都修改为{% load static %} 因为在django3.x中这部分做了修改,前者无法识别,只能用后者
- Java字符串的一些函数方法
一.substring()方法 String str="123456"; String s1=str.substring(2); //s1="3456" Str ...
- 一个线程池的c++实现
前面我们实现了CallBack类,实现了对任意可调用对象的封装,且统一了调用接口. 现在利用CallBack类,我们来实现一个线程池,我们的线程池包含: 1. 状态机, 用于控制和管理线程池的运行.停 ...
- Linux(CentOS7)中安装Docker
Linux(CentOS7)中安装Docker 什么是Docker? Docker是一个开源项目, 诞生于2013年初,最初是dotCloud公司内部的一个业余项目.它基于Google公司推出的Go语 ...
- nodejs 配置国内镜像
npm config set registry https://registry.npm.taobao.org npm config set disturl https://npm.taobao.or ...
- selenium webdriver 无法选中元素,修改元素属性可见
<ul data-v-6529428e="" class="el-dropdown-menu el-popper filter-dropdown el-dropdo ...
- C++ STL的简单应用(vector容器专题)
#include <iostream> #include <string> #include <stdlib.h> #include <vector> ...
- 不同页面的 body设置
由于SPA页面的特性,传统的设置 body 背景色的方法并不通用. 解决方案:利用组件内的路由实现 第一种方式 // 实例创建之前 beforeCreate(){ document.querySele ...
- Docker基本概念及命令
1.Docker三个重要概念:仓库(Repository).镜像(image)和容器(Container) Docker基本用法: docker 命令关键字(COMMAND) 一系列的参数 dock ...