buzhisuowei123 现有一个A1版本,A2版本和A3版本,依次递增为最新版本。A1有app,A2有app,A3没发布app,cdn是最新的A3资源现我手机安装A1app运行,dcc会自动热更到A3最新资源,运行一切正常。现在我用A2覆盖安装,运行会导致读取旧的资源,原因是覆盖安装,缓存里的filetable校检文件会被覆盖安装的覆盖,而assertid还是最新的版本,不同步导致运行时也不会更新到最新A3的filetable缓存,后面就顺理读了旧资源。想确认的问题是:覆盖安装app启动的时候,dcc有没在第一次启动时的特殊处之类的? 为什么覆盖安装后,dcc本地缓存会被旧的覆盖?而且assertid又是最新的,按道理,覆盖安装后,filetable缓存不应该更新,因为缓存里它已经热更到最新版本了。
S_eVent 修改scripts/index.js中的语句,将var curassets = cache.getResourceID('netassetsid');改为var curassets;同时,将cache.setResourceID('netassetsid', assetsidStr);这句注释掉。目的是防止APP缓存远程加载到的update/assetsid.txt中内容。这样就可以在每次启动时候都获取到最新的layadcc文件内容列表,解决该问题。如果解决了此问题,请给我的回答点个赞喔~