Egret微信小游开云体育- 开云体育官方网站- APP下载 KAIYUN SPORTS戏接入——资源包过大问题解决

2026-01-04

  开云体育官方,开云体育app,开云app下载,开云棋牌,开云官网,开云体育,开云电竞,开云,开云体育官网, 开云体育平台, 世界杯开云, 开云体育app下载, 开云体育网址, 开云体育2025

Egret微信小游开云体育- 开云体育官方网站- 开云体育APP下载 KAIYUN SPORTS戏接入——资源包过大问题解决

  朋友们好,今天为大家分享一篇Egret接入微信小游戏时,资源包过大问题的解决方案。

  有过微信小游戏开发经验的朋友一定遇到过这个问题——一旦微信小游戏整体包过大(超过4M)就无法上传。我个人之前在使用CocosCreator进行《乐游舫斗兽棋》《乐游舫打鸭子》游戏开发时都有遇到过这个问题,最近使用Egret进行一款游戏开发时,同样遇到这个问题,于是简单整理一下,拿出来和大家分享讨论,鉴于个人水平有限,有不对的地方,也欢迎朋友们指正。

  方案一:尽可能对美术资源、音乐资源、配置文件、代码量等缩减,使整个包压缩至4M以下,就可以进行微信小游戏版本上传。

  存在问题:对于这种方案,对开发人员来说操作简单,只要尽可能缩减文件即可,但是当游戏功能越来越多,界面越来越丰富,音乐资源越来越多,配置文件越来越复杂时,就很难保证整体包小于4M,所以这种方案并不是最好的选择。

  方案二:将游戏中占据空间较大的美术资源、音乐资源、配置文件等放置到一个外部服务器上,当游戏启动的时候,从该服务器上请求这些资源到游戏本地。

  存在问题:这种方案可以解决上述存在的问题,但是也有一定局限,目前微信小游戏并不允许开发人员将代码放置到外部服务器进行更新。

  步骤二:将Egret工程中的请求资源路径由原来的本地路径修改为服务器路径(例如:Loading界面的加载是在配置文件加载之前,所以不能使用配置文件名方式加载时,直接通过URLLoader方式通过全路径加载,这时就需要将原来的本地路径修改为服务器的全路径)。

  备注:这里单独说明一下,为了方便资源热更,可以对要拷贝到服务器的资源进行哈希重命名,保证每次版本的资源名的唯一性。

  以上的描述或许过于抽象,下面我们使用插件的方式实现,尽可能的帮大家简化操作。

  在之前的Egret开发笔记中我们有提到过,为了保证Egret核心代码文件体积满足微信小游戏要求,需要使用命令:egret publish --target wxgame的命令来完成微信打包,实际上,在使用该命令时,Egret按照scripts/config.wxgame.ts文件的buildConfig配置进行了一系列命令配置,因此,我们只要修改这个文件的执行命令,就可以简化我们所要做的工作。

  打开config.wxgame.ts文件可以看到如下图所示的配置(备注:大家刚打开的文件,是没有红框内的内容的),我们只需要按照如图,在自己需要的命令模块(build或者publish)所示添加这一部分代码即可。

  为了方便大家操作,这里将这部分代码文本贴在下面。这段代码实际上是在打包过程中做了以下三件事:

  第二,将resource目录下重新命名的文件拷贝到“工程名_wxgame_remote”目录下,方便我们使用;

  第三,对default.res.json文件中的配置路径按照新的文件名重新设置路径。

  接下来,我们只需要将“工程名_wxgame_remote”目录下的资源全部拷贝到我们自己的服务器特定目录下,然后修改工程启动文件Main.ts中加载资源部分的代码即可。

  最后给大家看下我们的效果展示——大家可以看到,在我们打包的微信小游戏资源目录下,实际上是没有任何资源的,但是我们的游戏界面依然可以正常显示(这里需要说明下,因为微信小游戏要求,我们需要将自己服务器的地址在小游戏后台进行白名单配置,否则当我们的游戏请求资源时会被拒绝)。

地址:开云体育永久网址【363050.com】 客服热线:363050.com 传真:363050.com QQ:363050.com

Copyright © 2012-2025 开云体育网站 版权所有 非商用版本