LayaAir2.8新增适配华为快游戏!

谁说胖子不能爱 提交于 2020-11-18 03:00:51
为了让开发者尽快的体验到华为快游戏,我们在LayaAir 2.8.0正式版之前,追加了华为快游戏的适配,提前推出支持华为快游戏LayaAir 2.8.0beta2版本。


华为快游戏平台简介




快应用是一种基于行业标准开发的新型免安装应用,其标准由主流手机厂商组成的快应用联盟联合制定。开发者开发一次即可将应用分发到所有支持行业标准的手机运行。
华为快游戏支持将现有HTML5游戏项目通过LayaAirIDE,直接发布打包成快应用形式进行发布。在华为GPU Turbo手机运行时速度更快,更省电。

华为快游戏的入口资源:

  • 应用市场首页快应用中心推荐

  • 应用市场首页底部:即点即玩游戏

  • 应用市场游戏页面底部:即点即玩,无需下载

  • 游戏中心推荐页底部:即点即玩,无需下载

  • 游戏中心分类页灯笼位置

  • 精品快游戏专题

  • 月度精品推荐


华为快游戏发布与调试环境准备




  1. 华为品牌的手机。

  2. PC电脑的与手机数据连接线,并保障发布时处于连接状态。

    因为华为快游戏不会生成发布二维码,需要在发布的时候,就保障数据线是连通的,否则LayaAirIDE发布的时候,只会生成一个rpk的包,最终还是要联数据线,手工复制rpk包到相关路径下。

  3. 安装nodejs 环境,必须要安装 10.x 稳定版本 ,如果不是的需要重新安装。node官网:https://nodejs.org/download/release/latest-v10.x/

  4. LayaAirIDE集中开发环境,LayaAir 2.8.0 beta2 或以上版本

    官网下载: https://ldc2.layabox.com/layadownload/?type=layaairide 

  5. 发布前的准备工作检查

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的命令行下输入

  
  
  1. adb logcat -s jsLog

那发布运行后的所有日志,都会在命令行中进行显示出来。如下图所示。

通常情况下,日志在命令行中查看即可,如果开发者想把日志导出来,可以使用华为的快应用加载器PC助手。

华为快应用PC助手使用指南参考官方地址:

https://developer.huawei.com/consumer/cn/doc/development/quickApp-Guides/quickapp-pcassistant-user-guide


华为快游戏的分包加载




华为快游戏的分包加载,目的是为了缩短下载时间和减少下载流量。通过使用分包策略,开发者可以指定下载和加载特定分包,而不必将所有整包内容一次性下载和加载。

当我们打算分包的时候,需要在LayaAirIDE发布的时候先勾选分包相关的选项,如下图所示:



然后,点击 分包选项+  ,打开如下图所示面板。设置分包名和对应的分包文件夹即可。


除了发布的设置,在manifest.json文件中,也需要声明subpackages分包字段,声明格式如下:
  
  
  1. subpackages:[

  2. {

  3. "name":"subpackageName1",//对应分包名

  4. "resource":"subpackagePath1"//对应分包文件夹

  5. },

  6. {

  7. "name":"subpackageName2",//对应分包名

  8. "resource":"subpackagePath2"//对应分包文件夹

  9. }

  10. ]

注意:如果自己手动分包时,resource最后是以 “ / ” 结尾(ide分包可忽略该步骤)。同时对应目录下需要有 game.js 文件


使用分包的示例代码如下:

  
  
  1. var task = hbs.loadSubpackage({

  2. subpackage:'subpackageName1',

  3. success :function(){

  4. console.log("loadSubpackage success");

  5. },

  6. fail:function(){

  7. console.log("loadSubpackage fail");

  8. },

  9. complete:function(){

  10. console.log("loadSubpackage complete");

  11. }

  12. });


  13. task.onprogress(

  14. callback(res){

  15. console.log("onProgress"+ JSON.stringify(res));

  16. }

  17. );


END


引擎案例分享:


推荐阅读:

本文分享自微信公众号 - Layabox(layabox)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!