hbuilder热更新

前端代码:

// 获取当前应用的版本号

​
var wgtVer=null;
function plusReady(){// ......// 获取本地应用资源版本号plus.runtime.getProperty(plus.runtime.appid,function(inf){wgtVer=inf.version;console.log("当前应用版本:"+wgtVer);checkUpdate(); });
}
if(window.plus){plusReady();
}else{document.addEventListener('plusready',plusReady,false);
}​




// 发起ajax请求检测是否有新版本

var checkUrl="http://ptest.liby.com.cn/MessageTransfer.php?c=message&m=getupdatetwo";
function checkUpdate(){
//     plus.nativeUI.showWaiting("检测更新...");var xhr=new XMLHttpRequest();xhr.onreadystatechange=function(){switch(xhr.readyState){case 4:plus.nativeUI.closeWaiting();if(xhr.status==200){console.log("检测更新成功:"+xhr.responseText);var newVer=xhr.responseText;newVer = JSON.parse(newVer);if(wgtVer&&newVer&&(wgtVer.substring(0,3) < newVer.versionName.substring(0,3))){if(window.confirm('检测到更新,是否更新?')){downWgt(newVer.apk);  // 下载升级包}}else{// plus.nativeUI.alert("无新版本可更新!");}}else{console.log("检测更新失败!");// plus.nativeUI.alert("检测更新失败!");}break;default:break;}}xhr.open('GET',checkUrl);xhr.send();
}// 下载wgt文件
// var wgtUrl="http://demo.dcloud.net.cn/test/update/H5EF3C469.wgt";
function downWgt(wgtUrl){
// console.log(wgtUrl);return;plus.nativeUI.showWaiting("下载更新文件...");plus.downloader.createDownload( wgtUrl, {filename:"_doc/update/"}, function(d,status){if ( status == 200 ) { console.log("下载更新文件成功:"+d.filename);installWgt(d.filename); // 安装wgt包} else {console.log("下载失败!");plus.nativeUI.alert("下载失败!");}plus.nativeUI.closeWaiting();}).start();
}// 更新应用资源
function installWgt(path){plus.nativeUI.showWaiting("安装更新文件...");plus.runtime.install(path,{},function(){plus.nativeUI.closeWaiting();console.log("安装更新文件成功!");plus.nativeUI.alert("应用资源更新完成!",function(){plus.runtime.restart();});},function(e){plus.nativeUI.closeWaiting();console.log("安装更新文件失败["+e.code+"]:"+e.message);plus.nativeUI.alert("安装更新文件失败["+e.code+"]:"+e.message);if(e.code == 10){alert('请清除临时目录');}});}php代码:public function getupdatetwo(){$arr = array('versionCode' => 102,'versionName' => '1.8.0','msg' => '有新版本可供更新.\n 1.界面美化 \n 2.性能优化','apk' => 'http://cloud-dev.playxs.com/static/app/H50488D36.wgt',//存放在服务器的升级资源包);echo trim(json_encode($arr));}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517119.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

炸裂!这些大厂跪求的人才太牛了!

今年所有的互联网公司都在ALL in AI&#xff0c;百度、腾讯、阿里巴巴、京东等互联网巨头都在四处挖掘AI人才。AI的岗位需求很多&#xff0c;几乎每天都有数百个JD放出。而亿欧智库发布的《2020全球人工智能人才培养研究报告》提到&#xff0c;至今为止AI的人才储备仍跟不上需求…

nacos 整合Dubbo 多服务

服务端和客户端共有部分 spring:application:# 应用名称name: xxxprofiles:# 环境配置active: devcloud:nacos:discovery:# 服务注册地址server-addr: nacos.server.com:8848config:# 配置中心地址server-addr: nacos.server.com:8848# 配置文件格式file-extension: yml# 共享…

60TB 数据量的作业从 Hive 迁移到 Spark 在 Facebook 的实践

Facebook 经常使用分析来进行数据驱动的决策。在过去的几年里&#xff0c;用户和产品都得到了增长&#xff0c;使得我们分析引擎中单个查询的数据量达到了数十TB。我们的一些批处理分析都是基于 Hive 平台&#xff08;Apache Hive 是 Facebook 在2009年贡献给社区的&#xff09…

阿里主管通知我试用期延期……

阿里妹导读&#xff1a;接下来的文章是一篇发布在阿里内网里的文章。花木是一位走出体制的博士&#xff0c;讲述自己Landing的经历。今天&#xff0c;她将这段经历分享给大家&#xff0c;告诉我们&#xff1a;脸先着地又怎样&#xff0c;哪有那么多坦途&#xff1b;最美的&…

使用hbuilder的maps模块调起百度地图导航

首先需要在百度地图开放平台&#xff0c;创建应用拿到appid&#xff0c;然后在hbuilder进行如下配置&#xff1a; hbuilder的manifest.json的配置如下&#xff1a; permissions下添加如下代码&#xff1a; "Maps": {"description": "地图"} 然…

SpringBoot2.x RabbitMQ Nacos Nacos-Config

文章目录一、依赖配置1. 引入依赖2. 配置文件3. 主配置二、生产者代码代码Conding2.1. 发送客户端2.2. 确认机制2.3. 消息 return机制2.4. controller2.5. MQ工具类2.6. 常量类三、消费端3.2. 消费者代码3.2. RabbitMQ常用命令一、依赖配置 1. 引入依赖 <!--服务注册发现--…

考拉海购技术支持的前世今生

本文来自考拉海购技术支持中心负责人--书渊的分享&#xff0c;想和大家聊一聊考拉技术支持的前世今生&#xff0c;在这个发展历程的介绍当中&#xff0c;大家也可以此对考拉窥一斑而知全豹。当然&#xff0c;既然是聊我们的家常(“黑历史”)&#xff0c;我会从这几年在考拉供应…

PHP 依赖镜像出问题后,阿里工程师的一顿“神操作“令人叫绝!

阿里妹导读&#xff1a;上个月&#xff0c;PHP开发者在网上纷纷反映出现 Composer 镜像无法访问的问题。阿里云内部一位 90 后工程师顾咏连夜开工排查&#xff0c;快速解决问题后&#xff0c;他在问题群里收到了一大波来自用户的红包。顾咏最后谢绝了红包&#xff0c;接受了阿里…

Elasticsearch SkyWalking 分布式链路追踪

文章目录1. 安装包下载2. 解压3. 修改配置文件4. 启动5. 测试验证1. 安装包下载 https://www.apache.org/dyn/closer.cgi/skywalking/8.8.0/apache-skywalking-apm-8.8.0.tar.gzhttps://archive.apache.org/dist/skywalking 2. 解压 tar -zxvf apache-skywalking-apm-8.8.0…

为什么HR 20分钟就淘汰了一个前端高级工程师?

最近HR小姐姐面了一个前端开发&#xff0c;4 年经验&#xff0c; 应聘的是前端高级开发工程师。他的简历中提到很多技术点&#xff0c;从 HTML、CSS、JavaScript 再到 Vue.js 和 React 一个都不缺&#xff0c;跨平台PC、移动端、小程序也都经历过&#xff0c;看着像个实战派。深…

angular图片上传

html代码&#xff1a; 当input出发change事件会调用touchUpdateImg方法&#xff0c;传入file对象和需要展示得到imgsmall属性&#xff0c;通过FileReader对象读取文件对象&#xff0c;我使用了apply进行了监听&#xff0c;之前不使用apply进行了监听&#xff0c;之前不使用app…

千万创业者的自白:踩过坑才明白这些真相!

“大众创业、万众创新”的浪潮正兴&#xff0c;随着国家对自主创业扶持力度的加强&#xff0c;中国的初创企业正在蓬勃发展&#xff0c;据统计&#xff0c;最近五年中国新注册的公司约有3000万家。 而另一方面&#xff0c;在轰轰烈烈的创业大潮中&#xff0c;市场竞争指数也急…

SpringBoot2 集成 skywalking 实现链路追踪

文章目录1. 启动skywalking2. 配置探针3. 启动项目4. 测试验证5. 效果图1. 启动skywalking cd D:\apache-skywalking-apm-bin\binwindows环境&#xff1a; 双击startup.bat linux环境&#xff1a; startup.sh2. 配置探针 -javaagent:D:\apache-skywalking-apm-bin\agen…

以“基”取胜:戴尔科技云平台 释放企业新动能

2020年春天&#xff0c;以云计算、5G、人工智能为代表的“新基建”蔚然成风&#xff0c;不仅助力中国产业智能化、信息化进入加速推进的快车道&#xff0c;促使全产业链迈开高质量发展的新步伐。更是面向长远&#xff0c;构筑数字经济创新发展之基。可以说&#xff0c;没有任何…

Nexus协议,闲鱼一体化开发的幕后玩家

Serverless是这几年兴起的一个概念&#xff0c;Serverless可以帮助开发者减轻甚至摆脱传统后端应用开发所需要的服务器设备的设置和运维工作&#xff0c;并以服务接口的方式为开发者提供所需要的功能。它希望开发者更加专注于应用逻辑本身&#xff0c;而不是被琐碎的基础设施细…

angular封装富文本编辑器指令

这个富文本编辑器的基本用法可以去该编辑器作者的github看下 (https://github.com/echosoar/medit) html代码和css 原版&#xff1a; 改版的&#xff1a; /*富文本编辑器*/#meditToolBar {position:fixed;z-index:100;width:100%;left: 0;bottom: 0;height:40px;background:…

日处理数据量超10亿:友信金服基于Flink构建实时用户画像系统的实践

导读&#xff1a;当今生活节奏日益加快&#xff0c;企业面对不断增加的海量信息&#xff0c;其信息筛选和处理效率低下的困扰与日俱增。由于用户营销不够细化&#xff0c;企业 App 中许多不合时宜或不合偏好的消息推送很大程度上影响了用户体验&#xff0c;甚至引发了用户流失。…

玛莎拉蒂“跨界”腾讯车联打造车载互联系统,新Ghibli “触电新生”

7月17日&#xff0c;玛莎拉蒂首款“触电”车型新Ghibli正式发布&#xff0c;与新亚太区代言人——锋芒玩家陈伟霆先生共同亮相&#xff0c;诠释年轻无畏的先锋态度。在创新科技方面&#xff0c;新Ghibli率先搭载了玛莎拉蒂与腾讯车联共同打造的全新车载互联系统。 【玛莎拉蒂新…

认识Java异步编程

一 、认识异步编程 通常Java开发人员喜欢使用同步代码编写程序,因为这种请求(request)/响应(response)的方式比较简单&#xff0c;并且比较符合编程人员的思维习惯;这种做法很好&#xff0c;直到系统出现性能瓶颈&#xff1b;在同步编程方式时由于每个线程同时只能发起一个请求…

使用MultipartFile实现文件上传_SpringMVC

文章目录一、单文件上传1. 创建上传表单2. 新增配置3. 编写上传控制类4. 接收参数5.文件保存路径6. 转存文件二、多文件上传2.1. 创建上传表单2.2. 编写上传控制类2.3. 保存文件三、MultipartFile类常用方法这篇文章主要为大家详细介绍了SpringMVC使用MultipartFile实现文件上传…