当前位置 : 主页 > 手机开发 > harmonyos >

【HarmonyOS】鸿蒙应用获取华为帐号手机号码步骤(API7及以下)

来源:互联网 收集:自由互联 发布时间:2023-08-28
【写在前面】 本文主要介绍使用API7及以下版本开发HarmonyOS应用时,通过华为帐号SDK和云侧接口获取手机号码的主要开发步骤,注意:开发过程中集成的华为帐号SDK仅支持API7及以下版本

【写在前面】

本文主要介绍使用API7及以下版本开发HarmonyOS应用时,通过华为帐号SDK和云侧接口获取手机号码的主要开发步骤,注意:开发过程中集成的华为帐号SDK仅支持API7及以下版本的HarmonyOS应用。

【前提准备】

1、HarmonyOS应用已申请获取手机号码的权限,申请权限文档请参考文档:

手机号权限申请流程

2、登录的华为帐号已绑定手机号码

【开发步骤】

步骤1:集成华为帐号HarmonyOS Javascripts SDK,进行开发准备和集成SDK等一系列步骤,按照文档操作即可。调用登录华为帐号接口时,使用Authorization Code方式进行登录,参考文档如下:

华为账号服务(HarmonyOS(JavaScript))

注意:调用登录华为帐号接口时,参数需要通过setScopeList或setScope方法传入手机号的scope(即https://www.huawei.com/auth/account/mobile.number),此部分代码如下所示,以setScope为例:

import {HuaweiIdAuthParamsHelper, HuaweiIdAuthManager} from '@hw-hmscore/hms-jsb-account';
var signInOption = new HuaweiIdAuthParamsHelper().setId().setProfile().setScope(new Scope('https://www.huawei.com/auth/account/mobile.number')).setAuthorizationCode().build();

【HarmonyOS】鸿蒙应用获取华为帐号手机号码步骤(API7及以下)_参考文档

步骤2:集成华为帐号SDK调用华为登录接口,可以获取到authorization code(即通过getServerAuthCode方法获取到authCode,下文中authCode表示此处获取的用户授权码),获取到authCode后,HarmonyOS应用可通过http请求调用云侧获取凭证Access Token接口,获取AccessToken,接口参考文档如下:

获取凭证Access Token

步骤3:在获取到AccessToken后,再次用http请求调用云侧Gopen.User.getInfo 接口,AccessToken作为参数,获取手机号,接口参考文档如下:

获取用户信息

【参考文档总结】

  • 华为帐号HarmonyOS Javascripts SDK: 华为账号服务(HarmonyOS(JavaScript))
  • setScopeList接口文档: setScopeList
  • 获取凭证Access Token接口(云侧): 获取凭证Access Token
  • 获取用户信息接口(云侧): 获取用户信息
  • @ohos.net.http (数据请求): @ohos.net.http (数据请求)

【FAQ】

1、通过集成华为帐号SDK无法直接获取手机号码,需要使用从SDK获取的authCode调用云侧相关接口获取手机号码;

2、调用云侧获取凭证AccessToken接口时,redirect_uri为非必填参数,若设置了回调参数可进行传参;

3、API8及以上HarmonyOS应用,华为帐号暂未对三方应用开发可用的SDK。


上一篇:蓝牙耳机无线产品欧盟CE认证RED办理
下一篇:没有了
网友评论