版本245
以前热更新的流程是 1构建 2version_generator.js 3再次构建,
以前的版本是没问题的 ,1,3执行后文件的MD5没变化
现在升级到245后,发现比如 build\jsb-link\assets\config.json 内容会变化 ,导致MD5不同,
这个就乱啦,那么热更新在步骤2后 你再次构建 要把新的manifest打进包里 但步骤3会产生新的文件 新的MD5和 2里已经生产的文件信息不同了 这个怎么弄啊
是你们的245版本有问题 还是热更新的流程 要变化 ?
请给个处理方式吧? 按目前的情况 死循环了 永远不可能把2里的manifest打进包了就
可以省略第三步的再次构建,直接把生成manifest文件的内容,拷贝到原manifest构建后的文件中
- 在假定重复构建文件不变化的情况下,这和原来的1、2、3是等效的
你是说 手动来操作manifest文件,比如找到build\jsb-link\assets 里manifest对应的构建后的目标文件,然后人为 拷贝进去替换?
对的,就是这个意思,只拷贝内容,文件名保持不变。在不出现“某些文件内容会变化”的问题前,你想,后面的一步再次构建,就只有manifest文件那一个变化,一个道理。
感觉热更新这里 坑真他们的多,不知道引擎组怎么想的是 他们自己从来都不用吧, 这里就算是手工操作,真他妈的麻烦,项目大了 目录数都海量了快 , 然后还遇到一个编辑器里 生产manifest后刷新到library的问题 有时候不刷新,我曹 很难想象这是现代化时代的产品的使用方式
即使文件一样,第二次的构建也很浪费时间,每次出包要构建两次。现在这种被迫操作就是使用起来很不方便,一个项目,构建后的manifest文件始终是在一个位置的,先根据后缀搜索一下,后续每次都是那个路径,改起来还好,比重复构建省时间。
也不用构建二次吧,可以设计成一次嘛