背景介紹
華為Game Service SDK提供了游戲應用自升級檢測、獲取玩家信息、游戲浮標、防沉迷、成就、排行榜等多個能力,Unity為了方便全球開發者快速集成該些能力並發布華為渠道,提供了HMS Core App Services SDK和demo。
本帖子先行試水,試試這個SDK的能力。
目標:將unity提供的游戲demo運行起來,能夠調試通過基本的功能接口,如init,華為帳號登錄。如果你還沒安裝Unity或者對Unity打包有疑問,請參考Unity Editor安裝和Apk打包: https://developer.huawei.com/consumer/cn/forum/topic/0204405811539110247?fid=18。
文檔鏈接
https://docs.unity.cn/cn/Packages-cn/com.unity.hms@1.2/manual/appgalleryChinese.html
demo下載路徑
https://github.com/Unity-Technologies/HMSSDKSample
我們需要運行的demo是這個:
運行前的准備
步驟1:注冊成為華為開發者並創建應用
這個步驟不做贅述,參考華為官方文檔:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/appgallerykit-preparation-game
我這里創建如下:
步驟2:從華為后台下載agconnect-services.json文件
- 創建完應用后,切換該應用所關聯的項目下,界面會有如下提示,這里我選擇了“手工輸入包名”
- 下載agconnect-services.json文件
步驟3:替換Unity提供的demo中json文件。
將步驟2中下載的json文件替換下面的文件。
步驟4:在Assets/Plugins/Android中配置如下文件。
這里,我們參考unity官網提供的文檔如下章節完成相關配置,不做贅述。
使用Unity Editor打開demo
這里默認您已經正常安裝了Unity Editor,如果沒有安裝,請自行安裝,我這里是參考下面這個帖子安裝的Unity Hub和2020.1.2f1c1版本的Unity Editor。
https://developer.huawei.com/consumer/cn/forum/topic/0204405811539110247?fid=18
步驟1:打開Unity Hub,添加Unity提供的項目
結果如下:
注意:打開時注意選擇正確的Unity版本
步驟2:雙擊上述項目,進入Unity Editor界面。
該提示無需關注,因為我本地安裝的和Unity該demo用的Editor版本號不一樣,選擇“Continue”。
選擇“Continue”等待項目導入完成。
最后,進入Editor成功,界面如下:
完成Android的Build Settings設置。
步驟1:選擇“File > Build Settings”
步驟2:選擇如下,點“Player Settings”進入項目設置頁面。
注意: 沒有安裝Android模塊的用戶需要按指引在編輯器中安裝Android模塊,安裝完Android模塊需要重啟編輯器才能生效。
步驟3:根據自己在華為AGC平台上創建的應用信息替換自己的應用信息,涉及包名、版本號等。
步驟4:參考如下步驟生成自己的應用簽名文件。
注意:如提示JDK路徑不存在或為空,請前往Preference->External Tools修改默認的JDK路徑。系統會自動檢測,如檢測不到,請自行安裝后重啟編輯器重試,參考視頻JDK not found Unity | java development kit is not set or invalid unity。
我這里將生成的簽名文件放置在這個位置了,這里已經成功生成。
生成並配置簽名證書指紋
使用上面的簽名文件,參考華為的文檔生成簽名證書指紋並將該指紋在華為AGC系統中配置。
打包運行程序
步驟1:選擇“Switch Platform”切換平台至Android手機上。
步驟2:選擇“Build And Run”,選擇剛剛的簽名文件。
界面會提示如下:
看這個提示意思是我項目Assets\Plugins\Android下的launcherTemplate.gradle文件使用了不推薦的方式,要解決這個問題,我可以將這個文件中的“useProguard”手動刪除。這里我選擇了手動刪除,下面標紅兩行刪除。
重新打包運行,手機上已經正常安裝了該demo。
步驟3:查看打包后的demo是否正常。
打包后demo運行如下。
點擊init界面日志信息提示成功。
點擊Login>login按鈕,能夠正常拉起華為帳號登錄界面。
至此說明demo已經成功運行起來,我們可以在如下文件中查看unity關於該demo的接口調用方式,並繼續調試運行相關華為接口。
注意:如果點擊Login>login按鈕登錄失敗,並報錯6003,請參考調用HMS SDK接口報錯6003,大概率是因為選擇簽名文件build完成后簽名指紋發生了變化。
欲了解更多詳情,請參見:
Unity Editor安裝和Apk打包:https://developer.huawei.com/consumer/cn/forum/topic/0204405811539110247?fid=18
原文鏈接:https://developer.huawei.com/consumer/cn/forum/topic/0201418722921820534?fid=18
原作者:Mayism