HarmonyOS 鸿蒙Next小程序转快应用接入帐号服务指导
HarmonyOS 鸿蒙Next小程序转快应用接入帐号服务指导
1. 帐号服务介绍
华为帐号是用户访问华为云业务的凭证,拥有华为帐号的用户,可以使用华为云业务,如华为云服务、华为游戏中心、华为应用市场等。
华为帐号的开放基于OAuth2.0协议标准,在获得用户授权后,应用可以获取用户在华为帐号系统的基本信息,如OpenID、UnionID、用户昵称、头像、邮箱、手机号等。
OpenID: 应用使用华为帐号登录后,会获得当前登录的华为帐号对该应用开放的唯一标识。
UnionID与OpenId的区别: 使用同一个华为帐号登录不同的应用,返回的OpenID值不同,但是UnionID是相同的。所以如果开发者需要在多个应用之间标识用户的唯一性,可以使用UnionID。
接入华为帐号后即可获取OpenID,但是获取UnionID需要在申请帐号服务时,勾选“启用UnionId”。
2. 小程序转快应用接入帐号服务开发流程
开发准备
- 在华为开发者联盟上注册成为开发者,并完成实名认证。
- 在AppGallery Connect上完成快应用的创建。
- 在AppGallery Connect上开通华为帐号服务。
- 华为帐号服务是华为扩展接口,而非厂商联盟规范,请安装华为快应用IDE进行接入。
开发步骤
【Step1】快应用调用qa.getAccountProvider接口判断当前设备是否支持华为帐号服务。返回 huawei
表示支持,否则表示不支持。
【Step2】快应用调用qa.accountAuthorize接口获取Authorization Code。
【Step3】判断是否需要重新获取Authorization Code。
【Step4】快应用客户端将获取的Code存储到服务端,服务端调用rest接口通过Code获取Access Token,最后服务端将获取的Access Token返回给快应用客户端。
【Step5】若获取的Access Token失效,则服务端调用rest接口通过Refresh Token重新获取Access Token,然后服务端再将重新获取的Access Token返回给快应用客户端。
【Step6】快应用调用qa.getAccountProfile接口获取用户基本信息,包括OpenID和用户昵称、头像等。
【Step7】【可选】快应用调用qa.getAccountPhoneNumber获取用户手机号码信息。
3. FAQ
Q:调用qa.accountAuthorize,出现signInByBaseScope Authorize base profile fail, code=1的报错信息,如何处理?
出现此错误是由于调试设备上没有安装HMS Core,请到华为应用市场下载并安装最新版本的HMS Core。
Q:如何在手机上取消对快应用的用户授权?
进入手机设置页面,点击登录的帐号,菜单选择“隐私中心 > 控制对您帐号的访问”,点击需要取消授权的应用,点击“取消授权”。
Q:如何查看快应用rpk文件的签名?
通过快应用加载器加载该rpk,返回到加载器首页,在使用记录列表中长按该快应用,弹出菜单中选择“管理”进入应用信息界面。
Q:接入帐号服务时出现异常,如何处理?
华为帐号接口为厂商定制接口,为了方便定位问题,调试时,请安装华为快应用IDE进行调试。
出现异常请参考如下操作进行定位:
- 检查是否已在“华为开发者联盟”申请华为帐号服务。
- 调用qa.getAccountProvider,请确保获取返回值为
huawei
后,再调用其他接口。 - 如果出现1002的错误码,请检查使用IDE生成的签名信息和“华为开发者联盟”上配置的证书指纹是否保持一致。
Q:qa.accountAuthorize接口常见错误码及处理建议?
错误码 | 描述 | 处理建议 |
---|---|---|
200 | 通用错误,一般是网关请求网络异常导致,具体错误描述可以在message中查看 | 出现403网络异常错误码时,建议尝试切换网络,或者检查是否有传入scope |
201 | 用户拒绝授权 | - |
202 | 接口传入参数错误 | 请对传入参数进行检查 |
1002 | 签名校验失败 | 请检查rpk是否为正式构建的版本,rpk包使用的签名是否与“华为开发者联盟”上配置的指纹签名保持一致 |
Q:调用qa.accountAuthorize接口报错,错误码为1002如何解决?
原因为签名校验失败,请检查rpk是否为正式构建的版本,rpk包使用的签名是否与华为开发者联盟网站上配置的指纹签名保持一致。
更多关于HarmonyOS 鸿蒙Next小程序转快应用接入帐号服务指导的实战教程也可以访问 https://www.itying.com/category-93-b0.html
请问华为平台如何区分是新开发的快应用,还是小程序转快应用的?
更多关于HarmonyOS 鸿蒙Next小程序转快应用接入帐号服务指导的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
干货!楼主加油多发点
针对“HarmonyOS 鸿蒙Next小程序转快应用接入帐号服务指导”的问题,以下是直接相关的回答:
在HarmonyOS鸿蒙Next小程序转快应用的过程中,接入帐号服务是关键步骤之一。首先,你需要确保已熟悉鸿蒙快应用的基本开发环境和流程。接下来,按照以下步骤接入帐号服务:
-
申请快应用开发者帐号:在华为开发者网站注册并登录,申请成为快应用开发者,获取必要的开发者权限和密钥。
-
配置帐号服务:在快应用项目中,找到配置文件(如
manifest.json
),添加帐号服务的相关配置,包括服务ID、密钥等。 -
集成SDK:下载并集成华为提供的帐号服务SDK到你的快应用项目中。这通常涉及将SDK文件添加到项目中,并在代码中引入相关模块。
-
实现登录逻辑:在快应用的登录界面,调用帐号服务SDK提供的接口,实现用户登录功能。这包括展示登录界面、处理用户输入、验证用户身份等步骤。
-
测试与调试:在开发环境中测试登录功能,确保一切正常。如果遇到问题,查看日志并参考华为开发者文档进行调试。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html,