laya在微信小游戏中加载BitmapFont失效的问题

发布为微信小游戏后,在微信工具中测试时总是提示加载retry to load TheRed.fnt,并以error告终。由于没有任何出错信息,无奈之下只好阅读源码。对BitmapFont的处理分为两个部分,一是下载x.fnt文件并加以解析,成功后会将x.fnt替换为x.png并再次下载。在微信工具中一步步地debug,最终定位到是在MiniAdapter.parseXMLFromString方法中调用:

(new window.Parser.DomParser()).parseFromString(value, 'text/xml')时出错了,提示”需要引入xml解析库文件“。

后来在社区中也看到了这个问题,下载了其提供的附件。在加载BitmapFont之前加入代码:

window.Parser = require("./js/dom_parser");

而发布为微信小游戏后,将附件文件(一个包含dom.js,dom_parser.js等文件的文件夹)放到发布目录下,再次运行微信工具,加载成功。

根据之前几次与Laya交互的经验,有时加载资源却不一定给出相应的error message,这时候只能往深层去debug查找错误信息了。

上一篇:cocos creator开发微信小游戏记录


下一篇:[Cocos Creator]安卓上微信小游戏加载到100%就进不去了