各位開發(fā)者朋友好!本文將詳細(xì)講解如何基于HarmonyOS ArkTS框架集成華為AppGallery Connect(AGC)認(rèn)證服務(wù),涵蓋從項(xiàng)目創(chuàng)建到SDK集成全流程。無論您是首次接入AGC服務(wù),還是需要優(yōu)化現(xiàn)有流程,本文均可提供完整指引。
一、開發(fā)流程詳解
- 創(chuàng)建項(xiàng)目與應(yīng)用
作用:項(xiàng)目是AGC資源的組織實(shí)體,支持同一應(yīng)用的多平臺版本(如手機(jī)、平板)集中管理。
場景建議:
通過創(chuàng)建不同項(xiàng)目區(qū)分測試環(huán)境與生產(chǎn)環(huán)境。
每個項(xiàng)目可獨(dú)立管理不同版本的認(rèn)證服務(wù)配置。
- 開通認(rèn)證服務(wù)
登錄AGC控制臺,進(jìn)入目標(biāo)項(xiàng)目,在「構(gòu)建 > 認(rèn)證服務(wù)」頁面啟用所需認(rèn)證方式(如手機(jī)、郵箱、華為賬號等)。 - 獲取agconnect-services.json文件
操作路徑:AGC控制臺 → 項(xiàng)目設(shè)置 → 應(yīng)用配置 → 下載配置文件。
作用:該文件包含應(yīng)用與AGC服務(wù)通信的必要密鑰和配置信息。 - 集成SDK
核心依賴:AGC SDK + 認(rèn)證服務(wù)SDK。
詳細(xì)步驟:
配置HarmonyOS工程依賴(見下文「集成SDK」章節(jié))。
初始化SDK并添加網(wǎng)絡(luò)權(quán)限。
- 實(shí)現(xiàn)賬號登錄認(rèn)證
支持方式:
標(biāo)準(zhǔn)登錄:手機(jī)、郵箱、華為賬號、自有賬號、匿名賬號。
高級功能:
關(guān)聯(lián)賬號:支持多賬號體系關(guān)聯(lián)同一用戶身份。
匿名轉(zhuǎn)正:匿名用戶升級為實(shí)名賬號。
- 登出
功能說明:
清除本地用戶信息及Token。
適用場景:用戶切換賬號或臨時退出登錄。
- 銷戶
安全要求:
用戶需主動發(fā)起注銷,確保符合隱私合規(guī)要求。
銷戶后,AGC側(cè)用戶數(shù)據(jù)將被永久刪除。
二、集成SDK全流程
前提條件
開發(fā)工具:DevEco Studio 5.0.3.100+
SDK版本:
Compile SDK Version ≥ 12
Compatible SDK Version ≥ 12
- 添加應(yīng)用配置文件
將agconnect-services.json拷貝至工程目錄:
AppScope/resources/rawfile/
注意:若rawfile目錄不存在,需手動創(chuàng)建。
- 配置SDK依賴
方式一:通過oh-package.json5
在應(yīng)用級oh-package.json5中添加依賴:
"dependencies": {
"@hw-agconnect/auth": "^1.0.4"
}
點(diǎn)擊右上角 Sync Now 同步配置。
方式二:命令行安裝
進(jìn)入entry目錄執(zhí)行命令:
ohpm install @hw-agconnect/auth
- 初始化SDK
在EntryAbility.ets的onCreate中初始化:
import auth from '@hw-agconnect/auth';
onCreate(want, launchParam) {
// 讀取配置文件
let file = this.context.resourceManager.getRawFileContentSync('agconnect-services.json');
let json: string = buffer.from(file.buffer).toString();
// 初始化AGC SDK
auth.init(this.context, json);
}
添加網(wǎng)絡(luò)權(quán)限:
在module.json5中聲明:
"requestPermissions": [
{ "name": "ohos.permission.INTERNET" }
]
- 手動設(shè)置Client ID/Secret(可選)
適用場景:配置文件未包含密鑰時(下載時勾選“不包含密鑰”)。
操作步驟:
在AGC控制臺「項(xiàng)目設(shè)置 > 常規(guī)」獲取Client ID和Secret。
初始化后補(bǔ)充參數(shù):
auth.setClientId("xxx"); // 替換為實(shí)際值
auth.setClientSecret("xxx");
- 配置混淆規(guī)則
規(guī)則文件:entry/obfuscation-rules.txt
添加內(nèi)容:
-keep
XXX/oh_modules/@hw-agconnect/auth
路徑說明:XXX為SDK在oh_modules中的實(shí)際路徑(如entry/oh_modules)。
三、結(jié)尾總結(jié)
通過本文,您已完成AGC認(rèn)證服務(wù)的HarmonyOS ArkTS集成流程。后續(xù)可結(jié)合業(yè)務(wù)需求擴(kuò)展登錄方式(如第三方社交賬號),并通過AGC控制臺監(jiān)控用戶行為數(shù)據(jù)。如果在實(shí)踐中遇到問題,歡迎訪問華為開發(fā)者論壇或AGC官方文檔獲取技術(shù)支持。
如果有其他想了解的功能,歡迎在評論區(qū)留言告訴我!咱們下期見~ ??