mui app升级方法或者mui 文件下载downloader方法参考:
前端代码javascript如下:
var dtask=null;
function createDownloadTask(){
if ( dtask ) {
outLine( "下载任务已创建!" );
return;
}
//var url = "http://snip.qq.com/resources/Snip_V2.0_5771.dmg";
var url = apk文件地址url;
var options = {method:"GET"};
dtask = plus.downloader.createDownload( url, options );
dtask.addEventListener( "statechanged", function(task,status){
if(!dtask){return;}
//dtask.start();
var path = task.filename;
console.log( status )
console.log(JSON.stringify(task))
switch(task.state) {
case 1: // 开始
outLine( "开始下载..." );
break;
case 2: // 已连接到服务器
outLine( "链接到服务器..." );
break;
case 3: // 已接收到数据
outSet( "下载数据更新:" );
outLine( task.downloadedSize+"/"+task.totalSize );
break;
case 4: // 下载完成
outSet( "下载完成!" );
outLine( task.totalSize );
plus.runtime.install(path); // 安装下载的apk文件
break;
}
} );
outSet( "创建下载任务成功!" );
// var url=url; // 下载文件地址
// console.log( url )
// dtask = plus.downloader.createDownload( url, {}, function ( d, status ) {
// console.log( Jstatus )
// console.log( JSON.stringify(d) )
// if ( status == 200 ) { // 下载成功
// var path = d.filename;
// console.log(d.filename);
// } else {//下载失败
// alert( "Download failed: " + status );
// }
// });
// dtask.start();
}
提示:极力反对某度后直接CV,CV后没有一点动静都没有留下,哪怕一个赞也好,悄悄的你走了正如你悄悄的来。后端java代码如有需要请留言。
public BaseResponse enclosureDownload(@PathVariable("id") Long id, HttpServletRequest request, HttpServletResponse response) {
AppVersionEntity version=new AppVersionEntity();
version.setId(id);
AppVersionEntity appVersionEntity= sysAppVersionService.queryObject(version);
String filePath =appVersionEntity.getFilePath();
//文件名称
String fileName=appVersionEntity.getFileName();
//得到该文件
File file = new File(filePath);
if(!file.exists()){
return new BaseResponse("",300,"附件不存在");
}
FileInputStream fileInputStream = null;
try {
fileInputStream = new FileInputStream(file);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
//设置Http响应头告诉浏览器下载这个附件
OutputStream outputStream = null;
try {
fileName = new String(fileName .getBytes(), "ISO-8859-1");
response.addHeader("Content-Disposition","inline;filename=" +fileName);
response.addHeader("Content-Length","" + file.length());
outputStream = response.getOutputStream();
byte[] bytes = new byte[2048];
int len = 0;
while ((len = fileInputStream.read(bytes))>0){
outputStream.write(bytes,0,len);
}
outputStream.flush();
fileInputStream.close();
outputStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return new BaseResponse(200);
}