热更新 md5文件

我就想问问
assetsManager.setVerifyCallback(function (filePath, asset) {
var md5 = calculateMD5(filePath);
if (md5 === asset.md5)
return true;
else
return false;
});

这个calculateMD5 是哪里面的方法 还是自己实现?


1赞

谢谢 指点 大神一旦MD5对不上 应该怎么处理呢~

额 跟version_generator.js生成的md5不一样~

去拉取最新git下的version_generator.js panda有对应编码的修改

好的 感谢

下载了最新的version_generator.js 但是还是不一样 真尴尬

我代码里面是抄你的

var md5Code = self.crypto.createHash(‘md5’).update(strData, ‘binary’).digest(‘hex’);

我要是把 md5 = crypto.createHash(‘md5’).update(fs.readFileSync(subpath, ‘binary’)).digest(‘hex’); 和代码里的 ‘binary’都去掉 就一样了 不知道为什么

挖坟了,我去掉了都不能保证全部完全一样,主要是有那么一个manifest永远不同,对相同内容生成两次,有那个一个manifest一直有md5变化,不知道是不是正常的,
另外还遇到一个问题就是zip包压缩,我是用构建好的文件对AB包进行进一步压缩做zip包热更,但是即便其他文件MD5相同,生成出来的zip包也不同,后来看社区说是zip有个修改时间的问题,我改成固定的修改时间也不行,具体代码格式是
jszip.file(文件路径, 文件内容, { binary: true,date: 时间戳 });
有知道原因吗