【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
马剑威(威哥爱编程)8 小时前
【鸿蒙开发案例篇】鸿蒙跨设备实时滤镜同步的完整方案
华为·harmonyos
song50112 小时前
鸿蒙 Flutter 图像识别进阶:物体分类与花卉识别(含离线模型)
人工智能·分布式·python·flutter·3d·华为·分类
waeng_luo13 小时前
[鸿蒙2025领航者闯关] HarmonyOS深色模式实现
harmonyos·鸿蒙2025领航者闯关·鸿蒙6实战·开发者年度总结
灯前目力虽非昔,犹课蝇头二万言。13 小时前
HarmonyOS笔记9:UIAbility之间的切换和数据的传递
笔记·harmonyos
花启莫你是不是傻13 小时前
在鸿蒙中调用 FFmpeg 命令行工具
华为·harmonyos
L、21814 小时前
性能调优实战:Flutter 在 OpenHarmony 上的内存、渲染与启动速度优化指南
javascript·华为·智能手机·electron·harmonyos
5008415 小时前
鸿蒙 Flutter 分布式硬件调用:跨设备摄像头 / 麦克风共享
分布式·flutter·华为·electron·wpf·开源鸿蒙
m0_6855350816 小时前
偶次非球面介绍
华为·光学·光学设计·光学工程·镜头设计
5008416 小时前
存量 Flutter 项目鸿蒙化:模块化拆分与插件替换实战
java·人工智能·flutter·华为·ocr