cocos creator v2.3.4
let xhr = new XMLHttpRequest();
Constants.logger.info("==========>XMLHttpRequest");
xhr.open("GET", Constants.config.AndroidVersionUrl, true);
xhr.timeout = 500000;
xhr.onload = function () {
Constants.logger.info("===========>xhr.readyState = " + xhr.readyState);
if (xhr.readyState == 4 && (xhr.status >= 200 && xhr.status < 400)) {
var response = xhr.responseText;
versionModel = JSON.parse(response);
Constants.logger.debug("============>checkAndroidHotLoad this is " + this.progressBar.progress);
Constants.logger.debug("========>versionModel Version = " + versionModel.version);
if(versionModel.version > Constants.config.appVersion.split('.')[0]){
let dirPath = jsb.fileUtils.getWritablePath() + "data/";
let filePath = dirPath + "13cardrummy-release-13card.apk";
let downloader = new jsb.Downloader();
Constants.logger.info("=======>filePath = "+filePath);
downloader.createDownloadFileTask(Constants.config.shareLink, filePath, "down_apk");
downloader.setOnTaskError(function (sender, errorCode, errorCodeInternal, errorStr){
Constants.logger.info("errorCode = " + errorCode);
Constants.logger.info("errorCodeInternal = " + errorCodeInternal);
Constants.logger.info("errorStr = " + errorStr);
});
let progressBar = this.progressBar;
let infoText = this.infoText;
downloader.setOnTaskProgress(function(sender, bytesReceived, totalBytesRecevied, tatalBytesExpected){
Constants.logger.info("已下载完成的大小 = " + bytesReceived);
Constants.logger.info("总大小 = " + totalBytesRecevied);
Constants.logger.info("预期的总大小 = " + tatalBytesExpected);
Constants.logger.info("========>progressBar = " + progressBar.progress);
infoText.string = "Downloading the latest installation package……";
progressBar.progress = totalBytesRecevied / tatalBytesExpected;
});
downloader.setOnFileTaskSuccess(function(sender){
Constants.logger.info("down success !!!!");
Constants.logger.info("file tatal size = " + jsb.fileUtils.getFileSize(filePath));
Constants.native.OpenInstallApk(filePath);
});
}else{
Constants.logger.info("===================>restart1 checkHotLoad");
this.androidHotUpdating = false;
this.checkHotLoad();
}
}else{
Constants.logger.info("===================>restart2 checkHotLoad");
this.androidHotUpdating = false;
this.checkHotLoad();
}
}.bind(this);
xhr.send();
下载到固定进度就提示网络连接被关闭了,求大佬解惑
下面是部分日志:
2022-07-19 14:45:04.916 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.916Z] Information: 已下载完成的大小 = 292
2022-07-19 14:45:04.916 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.916Z] Information: 总大小 = 6425460
2022-07-19 14:45:04.916 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.916Z] Information: 预期的总大小 = 23712941
2022-07-19 14:45:04.916 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.916Z] Information: ========>progressBar = 0.27095618379854275
2022-07-19 14:45:04.918 10073-10121/com.toprummy.development D/HostConnection: glGetError exceeded.
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: java.net.SocketException: Socket closed
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: at java.net.SocketInputStream.socketRead0(Native Method)
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: at java.net.SocketInputStream.read(SocketInputStream.java:151)
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: at java.net.SocketInputStream.read(SocketInputStream.java:120)
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okio.Okio$2.read(Okio.java:140)
2022-07-19 14:45:04.933 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okio.AsyncTimeout$2.read(AsyncTimeout.java:237)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okio.RealBufferedSource.read(RealBufferedSource.java:47)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okhttp3.internal.http1.Http1Codec$AbstractSource.read(Http1Codec.java:363)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okhttp3.internal.http1.Http1Codec$FixedLengthSource.read(Http1Codec.java:407)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okio.RealBufferedSource$1.read(RealBufferedSource.java:439)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at java.io.InputStream.read(InputStream.java:101)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.lib.Cocos2dxDownloader$3$1.onResponse(Cocos2dxDownloader.java:221)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okhttp3.RealCall$AsyncCall.execute(RealCall.java:203)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at org.cocos2dx.okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
2022-07-19 14:45:04.934 10073-10174/com.toprummy.development W/System.err: at java.lang.Thread.run(Thread.java:761)
2022-07-19 14:45:04.949 10073-10121/com.toprummy.development V/libnb: enter native_bridge2_getTrampoline Java_org_cocos2dx_lib_Cocos2dxDownloader_nativeOnFinish, trampoline_addr 0xbce94d24
2022-07-19 14:45:04.956 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.956Z] Information: errorCode = -3
2022-07-19 14:45:04.956 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.956Z] Information: errorCodeInternal = 0
2022-07-19 14:45:04.957 10073-10121/com.toprummy.development D/jswrapper: JS: [INFO]: [2022-07-19T06:45:04.956Z] Information: errorStr = java.net.SocketException: Socket closed