訪問Egret官網,根據所需版本下載 EgretLauncher 和 Egret Wing。
當EgretLauncher版本大於等於1.2.1且引擎版本大於等於5.3.9 ,支持一鍵發布華為快游戲,詳細步驟如下。
開發環境准備
-
注冊華為快游戲賬號,賬號管理后台
-
賬號登陸、用戶信息等系統功能,請調用平台提供的 API。快游戲平台 API 說明
-
安裝華為快應用加載器
-
白鷺引擎 5.3.9 以上版本
-
Egret Launcher 1.2.1 以上版本
注意 最終發布的 rpk 文件總大小不能超過 10 MB。
創建小游戲和可視化編譯打包小游戲
- 使用 Egret Launcher 創建一個 Egret 游戲項目,或者將原有的 Egret 項目導入
- 導入或者創建完成后,會在 Egret Launcher 的列表里看到該項目。點擊發布設置:
- 選擇 華為快游戲 標簽,點擊確定,創建快游戲項目
- 創建成功后,點擊發布標簽,可以可視化的發布小游戲包
編譯游戲代碼到華為快游戲:把白鷺工程里的代碼編譯到快游戲的項目里
-
游戲代碼類型 - debug:js 代碼不進行 uglify 混淆,便於 debug 調試
-
游戲代碼類型 - release:js 代碼進行 uglify 混淆壓縮
-
點擊發布后,會把編譯好的 rpk 包生成到 dist 文件夾內
-
華為快游戲項目結構
build 目錄:
-
egret.fastgame.js :白鷺引擎與快游戲的適配層代碼
-
game.js:快游戲的入口文件
-
icon 目錄:游戲圖標
-
js 目錄:游戲的 js 代碼
-
manifest.js:用於加載依賴的 js 文件
-
manifest.json :快游戲的配置文件 查看具體說明
-
resource : 游戲的圖片、音頻等資源文件
-
dist 目錄:用於存放編譯好的 rpk 文件
-
sign:用於存放簽名文件
-
signtool:快游戲的編譯工具
7.通過 Launcher 的“修改配置”標簽頁,可以修改快游戲的相關參數,查看參數說明文檔。
注意
-
修改參數后,需要重新發布一次 rpk,新的參數才會生效。
-
最小平台版本號為 1075
安裝到手機
-
下載快應用加載器助手 windows版 mac 版
-
點擊 選擇文件 選擇剛才編譯好的 rpk 包,然后點擊 加載 安裝到手機
關於簽名文件
華為快游戲的簽名分為 debug 和 release 兩種。我們提供了默認的 debug 簽名,便於開發者打包調試。但如果要使用登陸、用戶信息等平台功能,則必須使用 release 簽名,查看生成方式。
-
在 Launcher 的發布標簽頁,簽名類型選擇 Release ,點擊右側的“打開”按鈕,會打開一個文件夾,然后將生成好的簽名文件放入。
-
再次發布后,生成出來的就是使用 release 簽名的 rpk 包
注意 :使用華為工具生成的簽名,必須將證書指紋,填到快游戲的后台的項目設置中。
FAQ
1. 平台最多支持5個音頻對象同時播放
2. Egret引擎的runtime快游戲如何設置屏幕的縮放模式?
A:Egret 目前支持的模式有:showAll, noScale, noBorder, exactFit, fixedWidth, fixedHeight, fixedNarrow, fixedWide。
以設置fixedWidth為例,有兩種設置方式:
-
在index.html文件中設置 data-scale-mode=”fixedWidth”。
-
在需要設置縮放模式頁面代碼中設置 this.stage.scaleMode=egret.StageScaleMode.fixedWidth;
3. Egret引擎的runtime快游戲如何開啟 WebGL 渲染?
A:Egret引擎默認的渲染模式是canvas,從 Egret Engine 2D 3.0.6 開始可以自由開啟 WebGL 渲染模式,設置方式如下:
在項目根目錄找到index.html,將renderMode設置為webgl。
egret.runEgret({renderMode:"webgl"});
如果不指定任何參數,則使用canvas渲染。
4. Egret引擎的runtime快游戲如何使用遮罩顯示對象?
A:從Egret 2.5 版本開始提供了不規則遮罩的功能,可以通過將一個顯示對象用作遮罩來創建一個孔洞,透過該孔洞使另一個顯示對象的內容可見。
示例圖中100*100的紅色正方形和半徑為25像素的藍色圓,紅色正方形被藍色圓遮罩,由於被遮罩的對象顯示在用作遮罩對象的全部不透明區域之內,所以顯示的正方形部分只是由圓完整部分覆蓋的那部分,即遮罩后只有紅色圓可見。
詳細實現代碼如下:
//將maskSprite設置為mySprite的遮罩
mySprite.mask = maskSprite;
//畫一個紅色的正方形
var square:egret.Shape = new egret.Shape();
square.graphics.beginFill(0xff0000);
square.graphics.drawRect(0,0,100,100);
square.graphics.endFill();
this.addChild(square);
//畫一個藍色的圓形
var circle:egret.Shape = new egret.Shape();
circle.graphics.beginFill(0x0000ff);
circle.graphics.drawCircle(25,25,25);
circle.graphics.endFill();
this.addChild(circle);
square.mask = circle;
用作遮罩的顯示對象可設置動畫、動態調整大小。
遮罩顯示對象不一定要添加到顯示列表中。但是,如果希望在縮放舞台時也縮放遮罩對象,或者希望支持用戶與遮罩對象的交互(如調整大小),則必須將遮罩對象添加到顯示列表中。
更多華為快游戲說明請參照指導文檔:
原文鏈接:
https://developer.huawei.com/consumer/cn/forum/topic/0204404972183320221?fid=18
作者:AppGallery Connect