華為帳號(hào)服務(wù)學(xué)習(xí)筆記(三):10分鐘完成Authorization Code模式客戶(hù)端Demo開(kāi)發(fā)

?

?Demo開(kāi)發(fā)準(zhǔn)備

1、 安裝Android Studio 3.5及以上版本颠蕴;

2寡键、 安裝JDK 1.8 及以上遭商;

3祠汇、 使用Android SDK Platform 19及以上;

4纳鼎、 使用Gradle 4.6及以上劝贸;

5、 在華為開(kāi)發(fā)者聯(lián)盟注冊(cè)成為華為開(kāi)發(fā)者,如已注冊(cè)虐秦,請(qǐng)?zhí)^(guò)此步驟;


?運(yùn)行環(huán)境配置

??之前按照華為帳號(hào)的官方指導(dǎo)試過(guò)demo開(kāi)發(fā)栋荸,發(fā)現(xiàn)前期接入華為開(kāi)發(fā)者聯(lián)盟的各種步驟有點(diǎn)繁瑣,各種界面來(lái)回切換凭舶,后來(lái)在Android Studio上發(fā)現(xiàn)HMS提供了一個(gè)IDE插件晌块,可以幫忙快速集成。本次文章主要就介紹通過(guò)這個(gè)IDE插件來(lái)快速創(chuàng)建一個(gè)華為帳號(hào)demo帅霜。

如果想自己手動(dòng)按照步驟創(chuàng)建帳號(hào)的demo匆背,可以直接查看這個(gè)官方指導(dǎo):

https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/dev-process-0000001050443773


**IDE插件安裝**

??這個(gè)工具叫HMS Toolkit,后來(lái)發(fā)現(xiàn)華為官方也有介紹身冀,大家有興趣的可以去它們主頁(yè)了解下:https://developer.huawei.com/consumer/cn/huawei-toolkit/

安裝插件钝尸,直接在Android Studio里面,點(diǎn)擊“File > Settings > Plugins” 搂根,搜索“HMS”找到HMS Toolkit就可以了珍促,點(diǎn)擊安裝然后重啟Android Studio。



**創(chuàng)建android項(xiàng)目**

??在開(kāi)發(fā)應(yīng)用前剩愧,你得本地有一個(gè)Android項(xiàng)目猪叙,已有Android項(xiàng)目的可忽略。

??步驟 1 打開(kāi)Android Studio軟件,點(diǎn)擊“File > New > New Project” 穴翩,按自己需求選擇犬第,我這里選擇的“Empty Activity”,點(diǎn)擊“Next”芒帕。


??步驟 2 在“Configure Your Project”界面填入項(xiàng)目名稱(chēng)歉嗓、包名、項(xiàng)目存儲(chǔ)位置副签、項(xiàng)目語(yǔ)言以及最低SDK版本遥椿,然后點(diǎn)擊“Finish”完成項(xiàng)目創(chuàng)建。



**配置AppGallery Connect**

??為了接入華為淆储,我們還需要在AppGallery Connect中創(chuàng)建應(yīng)用冠场,并做些基本設(shè)置。

步驟 1 使用華為帳號(hào)登錄AppGallery Connect(https://developer.huawei.com/consumer/cn/service/josp/agc/index.html)本砰。要是沒(méi)注冊(cè)碴裙,直接按照頁(yè)面指導(dǎo)完成帳號(hào)注冊(cè)就行,然后選擇“我的項(xiàng)目”点额。


步驟 2 在我的項(xiàng)目頁(yè)面點(diǎn)擊“添加項(xiàng)目”舔株。


步驟 3 輸入個(gè)名字作為項(xiàng)目名稱(chēng),點(diǎn)擊“確定”还棱。


步驟 4 項(xiàng)目創(chuàng)建成功后會(huì)自動(dòng)進(jìn)入“項(xiàng)目設(shè)置”頁(yè)面载慈,在這里找到“添加應(yīng)用”并點(diǎn)擊。


??如果你本來(lái)就有項(xiàng)目并且已經(jīng)有應(yīng)用了珍手,直接展開(kāi)頁(yè)面頂部的應(yīng)用選擇區(qū)域办铡,選擇“添加應(yīng)用”。


步驟 5 在“添加應(yīng)用”頁(yè)面中填寫(xiě)應(yīng)用信息琳要,特別注意平臺(tái)和包名的寡具,尤其是包名要和前面創(chuàng)建的android項(xiàng)目的包名一致。

??? 選擇平臺(tái):選擇“Android”稚补。

??? 應(yīng)用包名:需要與您正在開(kāi)發(fā)的應(yīng)用的包名保持一致童叠。

??配置完成后,后面的一些操作都可以忽略了课幕,直接去Android Studio操作就行厦坛,安裝的IDE插件可以幫忙進(jìn)行設(shè)置。


**在Android Studio上為項(xiàng)目配置華為AGC和華為帳號(hào)**

??步驟 1 在Android Studio中乍惊,菜單欄選擇“HMS > Configuration Wizard”粪般。如果你沒(méi)登錄AppGallery Connect,這個(gè)工具會(huì)幫忙自動(dòng)打開(kāi)瀏覽器并提示登錄污桦。

??步驟 2 登錄后,在Configuration Wizard界面可以選擇團(tuán)隊(duì)名稱(chēng)匙监、對(duì)應(yīng)的工程模塊凡橱、Integrated Kits(選擇Account Kit)和證書(shū)類(lèi)型小作,點(diǎn)擊“Generate”生成SHA256證書(shū)指紋,然后點(diǎn)擊“Next”稼钩。

選擇團(tuán)隊(duì)名稱(chēng)和對(duì)應(yīng)的工程模塊之后顾稀,Toolkit會(huì)自動(dòng)檢測(cè)AGC上是否有對(duì)應(yīng)的應(yīng)用。若有報(bào)錯(cuò)坝撑,根據(jù)界面點(diǎn)擊“Link”到AGC上檢查是否已創(chuàng)建應(yīng)用静秆。如果沒(méi)有,就創(chuàng)建個(gè)新的應(yīng)用(這個(gè)就是前面“配置AppGallery Connect”那步)巡李,然后點(diǎn)擊“Retry”抚笔。


??關(guān)于證書(shū)類(lèi)型說(shuō)明如下:

??? Use your certificate:直接使用你自己創(chuàng)建的證書(shū)生成SHA256證書(shū)指紋,這種是用來(lái)應(yīng)用發(fā)布的時(shí)候侨拦。關(guān)于證書(shū)的指導(dǎo)可參見(jiàn)Android證書(shū)簽名(https://developer.android.com/studio/publish/app-signing#generate-key)殊橙。

??? Use Android debug certificate:選擇Android自帶的調(diào)試證書(shū)生成SHA256證書(shū)指紋,這種方式僅用于應(yīng)用調(diào)試場(chǎng)景狱从。我們這就是個(gè)Demo膨蛮,為了簡(jiǎn)單我直接選的這個(gè)。

??點(diǎn)擊“Generate”可自動(dòng)生成證書(shū)指紋季研,如果生成失敗敞葛,檢查證書(shū)信息是否正確,確保證書(shū)信息和指紋相匹配与涡,或者根據(jù)生成證書(shū)指紋指導(dǎo)手工生成指紋惹谐,然后填寫(xiě)到指紋信息框內(nèi)。


??插件會(huì)自動(dòng)對(duì)Account Kit的使用環(huán)境進(jìn)行環(huán)境配置檢查递沪,我暫時(shí)還沒(méi)遇到過(guò)失敗的情況豺鼻。全部檢查項(xiàng)通過(guò)后直接點(diǎn)擊“Go to coding assistant”按鈕,就可以進(jìn)入Account Kit的頁(yè)面去選擇調(diào)用的接口了款慨。



**通過(guò)Coding Assistant集成Authorization Code模式登錄帳號(hào)**

??步驟 1 在Android Studio中儒飒,選擇“HMS > Coding Assistant”,然后在Kit列表中點(diǎn)擊“Account Kit”檩奠。


??步驟 2 鼠標(biāo)放到“Signing In With an ID(Authorization Code)”這個(gè)行上,拖拽下埠戳,把這行拖放到代碼區(qū)域。


鼠標(biāo)釋放后颗圣,會(huì)彈出新增代碼片段的選擇框,直接點(diǎn)擊“OK”在岂,可以看到會(huì)生成Authorization Code登錄的相關(guān)Activity文件和xml布局文件,并且AndroidManifest.xml蔽午、工程build.gradle和模塊build.gradle都有一些新增信息。具體文件有哪些變化看后面的登錄詳解及老。


??步驟 3 打開(kāi)“AndroiManifest.xml”文件抽莱,將應(yīng)用初始調(diào)用的Activity替換成步驟2生成的Activity,這樣我們的APP就可以主動(dòng)調(diào)用新加的Activity了骄恶。


??這樣食铐,一個(gè)帳號(hào)登錄的Demo就完成了。

??Demo的運(yùn)行調(diào)試叠蝇,可以在自己的設(shè)備或遠(yuǎn)程真機(jī)里運(yùn)行查看璃岳。


編譯、調(diào)試


**使用遠(yuǎn)程真機(jī)運(yùn)行**

步驟 1 在Android Studio的菜單欄中選擇“HMS > Cloud Debugging”或者在工具欄點(diǎn)擊如下圖標(biāo)悔捶。


步驟 2 遠(yuǎn)程真機(jī)界面铃慷,可以根據(jù)分辨率、Android版本那些來(lái)篩選要遠(yuǎn)程調(diào)試的真機(jī)蜕该。

這里有個(gè)坑犁柜,深圳地域的真機(jī)不知道什么原因,是不能進(jìn)入“設(shè)置”的堂淡,這導(dǎo)致帳號(hào)的Demo跑起來(lái)后無(wú)法拉起登錄頁(yè)面馋缅。強(qiáng)烈建議使用非深圳地域的真機(jī)進(jìn)行測(cè)試。


步驟 3 在菜單欄中點(diǎn)擊 (Run按鈕)或 (Debug按鈕)绢淀,在遠(yuǎn)程真機(jī)中運(yùn)行或調(diào)試App萤悴。


步驟 4 進(jìn)入運(yùn)行的項(xiàng)目,點(diǎn)擊“AUTHORIZATIONCODE MODE SIGNIN”按鈕皆的,拉起華為帳號(hào)登錄頁(yè)面覆履,這個(gè)頁(yè)面就是通過(guò)Authorization Code方式登錄的華為帳號(hào)。



** 使用本地真機(jī)運(yùn)行**

??在菜單欄中點(diǎn)擊 (Run按鈕)或 (Debug按鈕)费薄,在本地真機(jī)中運(yùn)行或調(diào)試App硝全。


??真機(jī)運(yùn)行結(jié)果示意如下:


**后續(xù)筆者會(huì)不斷輸出相關(guān)領(lǐng)域的優(yōu)質(zhì)內(nèi)容,希望大家持續(xù)關(guān)注本帳號(hào)楞抡!**

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末伟众,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子召廷,更是在濱河造成了極大的恐慌凳厢,老刑警劉巖账胧,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件找爱,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡寺谤,警方通過(guò)查閱死者的電腦和手機(jī)变屁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)疮胖,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)澎灸,“玉大人遮晚,你說(shuō)我怎么就攤上這事县遣。” “怎么了其兴?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵元旬,是天一觀的道長(zhǎng)法绵。 經(jīng)常有香客問(wèn)我朋譬,道長(zhǎng)徙赢,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任窑业,我火速辦了婚禮常柄,結(jié)果婚禮上西潘,老公的妹妹穿的比我還像新娘哨颂。我一直安慰自己威恼,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布腹备。 她就那樣靜靜地躺著馏谨,像睡著了一般附迷。 火紅的嫁衣襯著肌膚如雪喇伯。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,698評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音捻悯,去河邊找鬼。 笑死算柳,一個(gè)胖子當(dāng)著我的面吹牛瞬项,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播囱淋,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼皂吮,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼涮较!你這毒婦竟也來(lái)了冈止?” 一聲冷哼從身側(cè)響起熙暴,我...
    開(kāi)封第一講書(shū)人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤周霉,失蹤者是張志新(化名)和其女友劉穎亚皂,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體狞谱,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡跟衅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年伶跷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了叭莫。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雇初。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡抵皱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出移盆,到底是詐尸還是另有隱情,我是刑警寧澤咒循,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布叙甸,位于F島的核電站位衩,受9級(jí)特大地震影響糖驴,放射性物質(zhì)發(fā)生泄漏贮缕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一装哆、第九天 我趴在偏房一處隱蔽的房頂上張望蜕琴。 院中可真熱鬧奸绷,春花似錦号醉、人聲如沸辛块。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至径密,卻和暖如春享扔,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背惧眠。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工氛魁, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留呆盖,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓乏苦,卻偏偏與公主長(zhǎng)得像汇荐,于是被迫代替她去往敵國(guó)和親掀淘。 傳聞我的和親對(duì)象是個(gè)殘疾皇子油昂,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 初次見(jiàn)面 在國(guó)內(nèi)查排,說(shuō)到集成地圖服務(wù)俱恶,大多用的是高德和百度地圖提供的相關(guān)接口合是。自從華為開(kāi)始做地圖服務(wù)以后(目前華為地...
    BraveJoy閱讀 3,611評(píng)論 3 6
  • 今天感恩節(jié)哎聪全,感謝一直在我身邊的親朋好友泊藕。感恩相遇!感恩不離不棄难礼。 中午開(kāi)了第一次的黨會(huì)娃圆,身份的轉(zhuǎn)變要...
    迷月閃星情閱讀 10,567評(píng)論 0 11
  • 彩排完,天已黑
    劉凱書(shū)法閱讀 4,218評(píng)論 1 3
  • 沒(méi)事就多看看書(shū)蛾茉,因?yàn)楦褂性?shī)書(shū)氣自華讼呢,讀書(shū)萬(wàn)卷始通神。沒(méi)事就多出去旅游谦炬,別因?yàn)闆](méi)錢(qián)而找借口悦屏,因?yàn)橹灰闶〕詢(xún)€用,來(lái)...
    向陽(yáng)之心閱讀 4,788評(píng)論 3 11
  • 表情是什么键思,我認(rèn)為表情就是表現(xiàn)出來(lái)的情緒础爬。表情可以傳達(dá)很多信息。高興了當(dāng)然就笑了看蚜,難過(guò)就哭了纬乍。兩者是相互影響密不可...
    Persistenc_6aea閱讀 125,114評(píng)論 2 7