- Creator 版本: 2.x 测试版本2.4.10
- 目标平台: Android
在2.4.x Cocos2dxDownloader.java中,下载文件是否断点续传会判断_resumingSupport
但是_resumingSupport是在一次访问成功之后才会把host put进去,
热更会在某个host下先请求配置,再进行下载,不会有问题。
但是游戏启动后某个host下第一次执行jsb.Download,重启后不会进行断点续传
想问下这个逻辑是Bug,还是设计?
在2.4.x Cocos2dxDownloader.java中,下载文件是否断点续传会判断_resumingSupport
但是_resumingSupport是在一次访问成功之后才会把host put进去,
热更会在某个host下先请求配置,再进行下载,不会有问题。
但是游戏启动后某个host下第一次执行jsb.Download,重启后不会进行断点续传
想问下这个逻辑是Bug,还是设计?
我记得以前测试的结果 是重启后 是可以续传的,但目前不保证100%是这样也
不过 就目前的情况 每次也都是 重新new 一个jsb.Downloader,然后续传 ,那么和你重启游戏 这个有区别吗 我认为区别不大应该,所以 我认为重启后也应该是有续传的 但不清楚你那里的问题了就
目前重启后获取已下载文件大小正常 但是走到
if (fileLen > 0) {
if (_resumingSupport.containsKey(host) && _resumingSupport.get(host)) {
downloadStart = fileLen;
} else {
// Remove previous downloaded context
try {
PrintWriter writer = new PrintWriter(tempFile);
writer.print("");
writer.close();
}
// Not found then nothing to do
catch (FileNotFoundException e) {
}
}
}
首次启动_resumingSupport并没有包含host,已下载的会被清掉