[LayaAir 2.0]如何更新appcache的资源
我尝试自己写一个热更新模块,native底层好像只开放了这个接口,
官网描述 路径规则:/,表示app根目录。例如:hashstr('/index.html')
所以我尝试几种写法去更新文件,一直没有变化
1、let filePath = "/cache//LayaCache//appCache/9ea141a6/" + sourceFilename.substring(0, 2) + "/" + sourceFilename.substring(2);即 :/cache//LayaCache//appCache/9ea141a6/6a/b7299a
6ab7299a是文件的编码
let fid1 = cache.hashstr(filePath);会产生一个新的目录跟文件37/13ee94
2、cache.hashstr(“/” + 6ab7299a); update失败
3、cache.hashstr(“/” + “js/bundle.js”); update失败
有谁知道这个函数怎么用的
/**
* 更新dcc缓存中的一个文件
* @param nameid 更新的文件的id。
* 路径规则:/,表示app根目录。例如:hashstr('/index.html'), 不要带参数,如果带参数的话-- hashstr('/aa/bb.htmlff=2') 会导致谁也找不到这个文件
* @param chksum 校验码,如果0则此函数自己计算。如果是外部版本控制,则这个是hashstr后的版本号。
* @param buf ArrayBuffer 文件内容。
* @param extversion 是否使用外部版本号
* @return boolean 如果返回true则表示更新成功,否则的话,表示校验码不一致,即
* 先要更新dcc才能工作。
*/
updateFile(nameid:number,chksum:number,buf:ArrayBuffer,extversion:boolean):boolean;
官网描述 路径规则:/,表示app根目录。例如:hashstr('/index.html')
所以我尝试几种写法去更新文件,一直没有变化
1、let filePath = "/cache//LayaCache//appCache/9ea141a6/" + sourceFilename.substring(0, 2) + "/" + sourceFilename.substring(2);即 :/cache//LayaCache//appCache/9ea141a6/6a/b7299a
6ab7299a是文件的编码
let fid1 = cache.hashstr(filePath);会产生一个新的目录跟文件37/13ee94
2、cache.hashstr(“/” + 6ab7299a); update失败
3、cache.hashstr(“/” + “js/bundle.js”); update失败
有谁知道这个函数怎么用的
没有找到相关结果
已邀请:
要回复问题请先登录
1 个回复
vison123
赞同来自:
cache.updateFile(fid1, 0, buff, true)) 并不起效