AppGallery Connect:使用unity完成華為游戲的初始化和華為帳號登錄

來源:華為開發(fā)者論壇
作者:AppGallery Connect
時(shí)間:2020-12-23
2458
unity提供給華為的demo已經(jīng)可以正常運(yùn)行起來。這個(gè)帖子,準(zhǔn)備繼續(xù)測試并驗(yàn)證該demo是否可以滿足以下兩個(gè)要求。完成初始化的一些操作:實(shí)現(xiàn)華為游戲帳號登錄,能夠獲取到玩家的相關(guān)信息。

背景介紹:

前面寫得幾個(gè)帖子已經(jīng)詳細(xì)介紹了:

Unity Editor安裝和Apk打包:https://developer.huawei.com/consumer/cn/forum/topic/0204405811539110247?fid=18

手把手教您快速運(yùn)行Unity提供的華為游戲demo。

至此,unity提供給華為的demo已經(jīng)可以正常運(yùn)行起來。

這個(gè)帖子,準(zhǔn)備繼續(xù)測試并驗(yàn)證該demo是否可以滿足以下兩個(gè)要求。

完成初始化的一些操作

實(shí)現(xiàn)華為游戲帳號登錄,能夠獲取到玩家的相關(guān)信息。

Demo測試后,大家自行參考這個(gè)demo設(shè)計(jì)自己的代碼就好。

涉及Unity提供的接口

初始化接口:

HuaweiGameService.AppInit()

 HuaweiGameService.Init()

登錄相關(guān)接口:

 HuaweiGameService.Login(ILoginListener listener)

HuaweiGameService.SilentSignIn(ILoginListener listener)

HuaweiGameService.SignOut(ILoginListener listener)

HuaweiGameService.CancelAuthorization(ICancelAuthListener listener)

獲取玩家信息相關(guān)接口:

HuaweiGameService.GetCurrentPlayer(bool isRealTime, IGetPlayerListener listener)

上述各接口含義可以參考Unity官網(wǎng)描述:

https://docs.unity.cn/cn/Packages-cn/com.unity.hms@1.2/manual/appgalleryChinese.html#7-api-%E5%8F%

82%E8%80%83%E5%88%97%E8%A1%A8

登錄流程

按照華為官網(wǎng)的聯(lián)運(yùn)游戲規(guī)則(https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/appgallerykit-devguide-game),如果游戲發(fā)布地區(qū):

包含中國大陸,客戶端需要走如下流程:

AppInit > Init > login > getCurrentPlayer

不包含中國大陸,客戶端需要走如下流程: 

不強(qiáng)制要求:AppInit > Init > login > getCurrentPlayer

不強(qiáng)制必須登錄華為帳號,可以自行設(shè)計(jì)游戲登錄。

我這里因?yàn)閼?yīng)用要發(fā)布中國大陸,所以按照前者要求接入了相關(guān)接口。

Demo測試

測試機(jī)型說明:

測試機(jī)型:Huawei phone,EMUI10.0.0,Android 10

該手機(jī)安裝的HMS Core版本是:5.0.4.301

該手機(jī)安裝的華為應(yīng)用市場版本是:11.0.2.302

Unity版本號:2020.1.2f1c1

Unity的demo代碼可參考如下文件,我這里打開瞅了瞅,unity團(tuán)隊(duì)對每個(gè)接口是否成功調(diào)用都做了界面信息打印,所以實(shí)際測試時(shí),我先直接看界面是否有成功提示,沒有再繼續(xù)定位原因了,簡單高效。

ia_1100000002.png

測試步驟說明

1. 啟動(dòng)demo,界面提示如下:

ia_1100000003.png

Unity默認(rèn)應(yīng)用啟動(dòng)時(shí)調(diào)用HuaweiGameService.AppInit()接口,這個(gè)處理也是滿足華為側(cè)要求,上述提示表明該接口已經(jīng)調(diào)用成功。

2. 點(diǎn)擊Init按鈕,界面和日志如下:

ia_1100000004.png

說明:這個(gè)接口按照華為聯(lián)運(yùn)游戲要求,在游戲啟動(dòng)時(shí)需要調(diào)用的,這里unity做了一個(gè)按鈕,實(shí)際大家處理時(shí)自行在啟動(dòng)時(shí)自動(dòng)調(diào)用。

3. 點(diǎn)擊Login > login,手機(jī)界面如下:

ia_1100000005.png

成功拉起華為帳號登錄授權(quán)界面,選擇Authorise and log in后,可以成功看到登錄成功的歡迎提示框,相關(guān)日志打印也提示登錄成功。

ia_1100000006.png

注意下:這里一定要看到華為登錄歡迎框,之前我對接過華為聯(lián)運(yùn)游戲,因?yàn)闆]有歡迎框,被華為審核駁回過。

4. 點(diǎn)擊getCurrentPlayer按鈕,界面和日志提示如下,表明獲取華為游戲玩家信息接口已經(jīng)成功。這個(gè)接口按照華為游戲要求在login接口處理后需要調(diào)用,而且需要對獲取的玩家信息做校驗(yàn)。

561548f7-2afc-4823-a135-b4f41f520ddb.png

接來下可以參考華為的如下文檔完成該玩家信息的校驗(yàn),https://developer.huawei.com/consumer/cn/doc/development/HMS-References/verify-login-signature。

完成玩家信息的校驗(yàn)并通過后,華為帳號的游戲登錄流程就算完成了。

登錄其他業(yè)務(wù)接口(按需自行處理了)

HuaweiGameService.SilentSignIn(ILoginListener listener)

點(diǎn)擊silentSignIn按鈕,界面提示如下,表明接口調(diào)用成功。

ia_1100000008.png

HuaweiGameService.SignOut(ILoginListener listener)

點(diǎn)擊signOut按鈕,界面提示如下:

ia_1100000009.png

HuaweiGameService.CancelAuthorization(ICancelAuthListener listener)

點(diǎn)擊cancelAuthorization按鈕,界面提示如下:

ia_1100000010.png

重新點(diǎn)擊login按鈕,界面再次拉起登錄授權(quán)界面,表明授權(quán)確實(shí)取消了。

ia_1100000011.png

立即登錄,閱讀全文
原文鏈接:點(diǎn)擊前往 >
文章來源:華為開發(fā)者論壇
版權(quán)說明:本文內(nèi)容來自于華為開發(fā)者論壇,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對觀點(diǎn)贊同或支持。如有侵權(quán),請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開掃一掃, 關(guān)注公眾號后即可登錄/注冊
加載中
二維碼已失效 請重試
刷新
賬號登錄/注冊
小程序
快出海小程序
公眾號
快出海公眾號
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家