HarmonyOS鸿蒙Next中关于认证服务中手机号码认证的使用
HarmonyOS鸿蒙Next中关于认证服务中手机号码认证的使用 前段时间开发项目时,第一次尝试使用华为认证服务,结果发生了一些奇奇怪怪的问题,在不断的查文档之后还是解决,这里就自己整理了一下开发流程。
1、登录AppGallery Connect
2、在全部服务中,选择“认证服务”,启动手机号码认证
3、我的项目中,添加项目,再选择添加应用,随后根据实际情况填写即可
4、在“项目设置”中,下载SDK配置,并放在自己项目的如图所示的目录中
5、修改oh-package.json5文件,添加以下内容
"dependencies": {
"@hw-agconnect/hmcore": "^1.0.1",
"@hw-agconnect/cloud": "^1.0.1"
}
6、修改EntryAbility.ets文件,在onCreate中添加以下内容
async onCreate(want: Want, launchParam: AbilityConstant.LaunchParam) {
let input = await this.context.resourceManager.getRawFileContent('agconnect-services.json')
let jsonString = util.TextDecoder.create('utf-8', {
ignoreBOM: true
}).decodeWithStream(input, {
stream: false
});
initialize(this.context, JSON.parse(jsonString));
}
7、打开需要使用验证码的界面,导入代码
// 导入
import cloud from '@hw-agconnect/cloud';
import { Auth, VerifyCodeAction } from '@hw-agconnect/cloud';
import { promptAction } from '@kit.ArkUI';
// 申请验证码
function requestVerifyCode(phoneNumber: string){
cloud.auth().requestVerifyCode({
action: VerifyCodeAction.REGISTER_LOGIN,
lang: 'zh_CN',
sendInterval: 60,
verifyCodeType: {
phoneNumber: phoneNumber,
countryCode: '86',
kind: "phone"
}
}).then(verifyCodeResult => {
//验证码申请成功
promptAction.showToast({
message: '申请成功'
})
}).catch(() => {
//验证码申请失败
promptAction.showToast({
message: "申请失败 "
})
});
// 注册用户
function createUser(phoneNumber: string, phoneCode: string){
cloud.auth().createUser({
kind: 'phone',
countryCode: '86',
phoneNumber: phoneNumber,
password: '123456789',//可以给用户设置初始密码,后续可以用密码来登录
verifyCode: phoneCode
}).then(result => {
// 创建用户成功
promptAction.showToast({
message: '创建成功'
})
}).catch(() => {
// 创建用户失败
promptAction.showToast({
message: '创建失败'
})
})
}
更多关于HarmonyOS鸿蒙Next中关于认证服务中手机号码认证的使用的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,手机号码认证服务是通过华为提供的统一认证服务(HUAWEI ID)实现的。开发者可以通过集成HUAWEI ID SDK,使用手机号码作为用户身份验证的方式。具体步骤如下:
-
集成HUAWEI ID SDK:在项目的
build.gradle
文件中添加HUAWEI ID SDK的依赖项,并配置相应的权限。 -
初始化HUAWEI ID服务:在应用启动时,调用
AccountAuthService
的getService
方法初始化HUAWEI ID服务。 -
请求手机号码认证:通过
AccountAuthParams
设置认证参数,指定使用手机号码进行认证。调用AccountAuthService
的signIn
方法发起认证请求。 -
处理认证结果:在
onActivityResult
方法中处理认证结果,获取用户的手机号码信息。 -
使用认证信息:根据业务需求,使用获取到的手机号码信息进行后续操作,如用户注册、登录等。
代码示例:
AccountAuthParams authParams = new AccountAuthParams.Builder(AccountAuthParams.DEFAULT_AUTH_REQUEST_PARAM)
.setIdToken()
.setAccessToken()
.setProfile()
.setMobileNumber()
.create();
AccountAuthService authService = AccountAuthManager.getService(activity, authParams);
authService.signIn(activity).addOnSuccessListener(authResult -> {
// 处理认证成功
}).addOnFailureListener(e -> {
// 处理认证失败
});
更多关于HarmonyOS鸿蒙Next中关于认证服务中手机号码认证的使用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙Next中,手机号码认证服务通过集成华为账号SDK实现。开发者需在AppGallery Connect中配置应用,获取agconnect-services.json
文件,并在项目中引入华为账号SDK。通过调用AccountAuthService
的signIn
方法,用户可使用手机号码进行认证。认证成功后,系统返回AuthAccount
对象,包含用户信息。开发者需处理认证失败和用户取消等场景,确保应用安全性和用户体验。