为了让开发者尽快的体验到华为快游戏,我们在LayaAir 2.8.0正式版之前,追加了华为快游戏的适配,提前推出支持华为快游戏LayaAir 2.8.0beta2版本。
华为快游戏平台简介
快应用是一种基于行业标准开发的新型免安装应用,其标准由主流手机厂商组成的快应用联盟联合制定。开发者开发一次即可将应用分发到所有支持行业标准的手机运行。
华为快游戏支持将现有HTML5游戏项目通过LayaAirIDE,直接发布打包成快应用形式进行发布。在华为GPU Turbo手机运行时速度更快,更省电。
华为快游戏的入口资源:
应用市场首页快应用中心推荐
应用市场首页底部:即点即玩游戏
应用市场游戏页面底部:即点即玩,无需下载
游戏中心推荐页底部:即点即玩,无需下载
游戏中心分类页灯笼位置
精品快游戏专题
月度精品推荐
华为快游戏发布与调试环境准备
华为品牌的手机。
PC电脑的与手机数据连接线,并保障发布时处于连接状态。
因为华为快游戏不会生成发布二维码,需要在发布的时候,就保障数据线是连通的,否则LayaAirIDE发布的时候,只会生成一个rpk的包,最终还是要联数据线,手工复制rpk包到相关路径下。
安装nodejs 环境,必须要安装 10.x 稳定版本 ,如果不是的需要重新安装。node官网:https://nodejs.org/download/release/latest-v10.x/
LayaAirIDE集中开发环境,LayaAir 2.8.0 beta2 或以上版本
官网下载: https://ldc2.layabox.com/layadownload/?type=layaairide
发布前的准备工作检查
PC里,Node环境、LayaAirIDE这些,都必须要安装好(ADB以及OpenSSL无需单独安装,LayaAir引擎IDE已内置)。
手机里,要打开”开发者模式“,允许USB调试。如下图所示。
打开”开发者模式“的操作如有疑问,也可以参考华为官方指引文档:
https://developer.huawei.com/consumer/cn/doc/quickapp-open-developer-option
在LayaAirIDE中发布华为快游戏
LayaAirIDE的发布功能,内置了华为快游戏的发布功能,需要先将LayaAir引擎的项目,通过发布功能打成 .rpk 后缀的包。发布功能的发布平台,选择华为快游戏
,最小平台版本当前选择1075(如有改变可以关注官方文档)。
在下图中,刷新那里,如果没连手机,显示未发现手机,请检查设备连接
,如果连上了会识别出手机型号(华为识别出的手机型号可能与手机销售型号不符,只要能显示出来,就说明连上了)
当项目中release签名存在时,可在发布页面上打印签名证书指纹(提交华为快游戏时会用到该指纹字符串),
这里要注意的是,要生成release签名后,点击打印签名证书指纹
才有效,否则会如下图所示,提示证书不存在。
关于其它发布功能的具体使用。由于有专门的发布功能介绍文档,这里不重复介绍了。不会的可以前往官网文档查看。
链接:https://ldc2.layabox.com/doc/?nav=zh-ts-3-0-6
华为快游戏的运行与调试
当LayaAirIDE发布成功后,会自动在华为手机上调起该游戏的全屏运行界面,大家可以在真机上运行测试。如果退出游戏界面,也可以从快应用加载器
APP进入后,直接点击游戏名称二次进入。如下图所示:
由于华为快游戏当前还没有提供快游戏环境调试工具,所以开发者需要先保障游戏的HTML5版本在浏览器端是没有问题的。再来调试华为快游戏。
调试华为快游戏一切靠日志,在LayaAirIDE的发布功能里,有一项是日志等级,默认的时候该选项为log等级。如下图所示。这样会包括console的log日志,以及报错日志。如果改为只是设置为error,则只显示报错日志,不会显示console日志。无论是error还是log都会在发布后,输出对应日志等级的相关输出信息,如果为off,则会不输出任何信息。
关于如何查看日志,我们如果不关掉发布项目的界面,是可以直接查看输出的日志的,如下图所示:
其实,还可以在PC命令行下,另起一个界面查看,这样,就可以不用一直开着IDE调试了。
操作方式是在PC的命令行下输入
adb logcat -s jsLog
那发布运行后的所有日志,都会在命令行中进行显示出来。如下图所示。
通常情况下,日志在命令行中查看即可,如果开发者想把日志导出来,可以使用华为的快应用加载器PC助手。
华为快应用PC助手使用指南参考官方地址:
https://developer.huawei.com/consumer/cn/doc/development/quickApp-Guides/quickapp-pcassistant-user-guide
华为快游戏的分包加载
华为快游戏的分包加载,目的是为了缩短下载时间和减少下载流量。通过使用分包策略,开发者可以指定下载和加载特定分包,而不必将所有整包内容一次性下载和加载。
当我们打算分包的时候,需要在LayaAirIDE发布的时候先勾选分包相关的选项,如下图所示:
然后,点击分包选项+
,打开如下图所示面板。设置分包名和对应的分包文件夹即可。
除了发布的设置,在manifest.json文件中,也需要声明subpackages分包字段,声明格式如下:
subpackages:[
{
"name":"subpackageName1",//对应分包名
"resource":"subpackagePath1"//对应分包文件夹
},
{
"name":"subpackageName2",//对应分包名
"resource":"subpackagePath2"//对应分包文件夹
}
]
注意:如果自己手动分包时,resource最后是以 “ / ” 结尾(ide分包可忽略该步骤)。同时对应目录下需要有 game.js 文件
使用分包的示例代码如下:
var task = hbs.loadSubpackage({
subpackage:'subpackageName1',
success :function(){
console.log("loadSubpackage success");
},
fail:function(){
console.log("loadSubpackage fail");
},
complete:function(){
console.log("loadSubpackage complete");
}
});
task.onprogress(
callback(res){
console.log("onProgress"+ JSON.stringify(res));
}
);
END
引擎案例分享:
推荐阅读: