H5开发安卓app实现自动更新场景


一、提供一个查询最新版本的接口  返回值中需要有版本号和下载地址

二、查询接口判断是否需要更新

$.ajax({
  type: 'POST',
  url:  "http://getLatestVersion",
  contentType: "application/json; charset=utf-8",
  success: function(data) {
    removeLoading();
    if(data != null && data.data.data != null){
      var lastVersion = data.data.data;
      if(lastVersion.versionCode > appVersionCode) {
      //自动强制更新app    如果不想强制可以弹框让用户选择
      DownloadFile(lastVersion.url);
      }
    }
  },
});

三、下载更新

function DownloadFile(url){
  var d = plus.downloader.createDownload(url, {}, function(f, s) { 
    plus.runtime.install(f.filename, {force:true}, function() {
      plus.runtime.quit();
    },function(err){
      alert(JSON.stringify(err));
    mui.toast("安装升级失败");
    });
  }, function() {
    alert("下载失败");
  });

  //显示更新进度的标签 自定义
  d.addEventListener('statechanged', function(download, status) {
  $("#updateApp_Rate").show();
  if (download.state == 3 && status == 200) {
    var percent = Math.round((download.downloadedSize / download.totalSize) * 100);
    $("#updateApp_Rate").html("更新进度: "+percent + "%");
  } else if (download.state == 4) {}
  }, false);
  $("#updateApp_Rate").hide();
  d.start();
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM