自定义ttf导出到微信小游戏真机提示找不到

Cocos Creator v2.1.3 测试版发布帖(正式版已发) 继续讨论:
抱歉,到git上看了您的提交,https://github.com/cocos-creator/engine/pull/5372
我用2.1.3.rc.7的引擎版本,检查包内确实有您的提交。
但是,我使用该版本做了个测试编译后,导出设置中md5开启和不开启都试验了,导出到微信开发者工具,将res文件夹下的所有资源都删掉并且放到远程路径下载下来。检查开发者工具上的network下载相关信息,测试资源确实都下载了。不过,在真机上调试,看log,提示failed to load font.data at path is null。
之前的版本是2.1.2发现有问题,然后看到帖子说修好了,就试试,发现好像还是不行。。。

如果自定义ttf文件放在本地,不放到远程,真机上是可以加载出来的,看真机上的log,显示的也是loaded Font:xxxx
(根据这个链接的讨论https://forum.cocos.com/t/topic/60522/2)
但是考虑到ttf文件可能有两套,动辄几m起,裁剪后也挺大,所以放在本地不大合适。

以下是log,其中第一个label是系统字,其他三个都是测试用的自定义ttf字体


显示的提示是path is null

谢谢你的反馈,我大概知道原因了,我验证一下这个问题

你好,我测试了一下,问题跟上面的改动没关系,问题出在url后面为什么带了这个参数,请问你那边这个参数是什么情况出现的

你好,感谢回复,关于那个后缀我查了一下,并不是我这加上了,怀疑是微信加的,我在这里加了log
这是用微信开发者工具调试的结果是这样的。


我一会儿再给一个真机上的log

这是刚刚在真机上调试的结果,确实多了这个skip_domain_check=true的后缀。。。

我试试在脚本里检查一下这个字段,然后剔除掉试试…,emmmm,这么搞还是不行233,放到远端不知道被做了什么操作


麻烦你看下,这个后缀是不是在wx-fs-utils.js里面downloadFile返回回来的时候就加上了

好的,我看一下,在您所述的地方加了个log,然后在真机上看


确实被加上了

但是我尝试在这个地方把?skip_domain_check=true给替换掉,还是不行

ps:
因为我用的是微信云开发,所以用的仿照downloadFild,实现了downloadCloudFile这个函数
function downloadCloudFile(remoteUrl, filePath, callback){
let isFilePathEmpty = false;
if(filePath === null || filePath === “” || filePath === undefined){
isFilePathEmpty = true;
}
if(remoteUrl.indexOf(“cloud://”) <= -1 && isFilePathEmpty){
remoteUrl = wxDownloader.REMOTE_SERVER_ROOT + remoteUrl;
}
let fileId = “”;
if(!isFilePathEmpty){
fileId = remoteUrl + filePath;
}
else{
fileId = remoteUrl;
}
wx.cloud.downloadFile({
fileID: fileId,
config:{
“env” : window.CloudEnv,
}
}).then(res => {
// get temp file path
if (res.statusCode === 200) {
if (res.tempFilePath.indexOf(‘ttf’) > -1) {
console.log(“test:” + res.tempFilePath);
}
callback && callback(null, res.tempFilePath);
}
else {
console.warn("Download file failed: " + remoteUrl);
console.warn(res.errMsg);
callback && callback(new Error(res.errMsg), null);
}
}).catch(error => {
// handle error
console.warn("Download file failed: " + remoteUrl);
console.warn(error.errMsg);
callback && callback(new Error(error.errMsg), null);
})
}

你好,我们不太清楚这个wx.cloud.downloadFile是怎么用的,麻烦你看下是不是有什么域名的配置能够把这个后缀去掉