【HarmonyOS】鸿蒙应用获取华为帐号手机号码步骤(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为例:

javascript 复制代码
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();

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

获取凭证Access Token

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

获取用户信息

【参考文档总结】

【FAQ】

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

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

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

相关推荐
马剑威(威哥爱编程)7 小时前
鸿蒙 HarmonyOS NEXT 系统 Preference 首选项使用全解析
华为·harmonyos·arkts·arkui
马剑威(威哥爱编程)10 小时前
HarmonyOS NEXT 使用 relationalStore 实现数据库操作
数据库·华为·harmonyos·arkts·arkui
星释11 小时前
鸿蒙Flutter实战:23-混合开发详解-3-源码模式引入
flutter·harmonyos
特立独行的猫a11 小时前
HarmonyOS 鸿蒙应用开发基础:转换整个PDF文档为图片功能
华为·pdf·harmonyos·pdf转图片
Vue102412 小时前
uniapp 嵌入鸿蒙原生组件 具体步骤
华为·uni-app·harmonyos
摆烂仙君13 小时前
华为2025年校招笔试手撕真题教程(二)
华为
星释17 小时前
鸿蒙Flutter实战:25-混合开发详解-5-跳转Flutter页面
flutter·harmonyos
个案命题19 小时前
鸿蒙Ability对比Android的Fragment
android·华为·harmonyos·鸿蒙·fragment
幽蓝计划21 小时前
鸿蒙仓颉开发语言实战教程:实现商城应用详情页
开发语言·华为·harmonyos
星释1 天前
鸿蒙Flutter实战:21-混合开发详解-1-概述
flutter·harmonyos