为什么用户很ipade 长时间不升级更新升级App

为什么用户很长时间不更新 app? - 知乎1497被浏览41300分享邀请回答1添加评论分享收藏感谢收起为什么用户很长时间不更新 app? - 知乎1497被浏览41300分享邀请回答1添加评论分享收藏感谢收起为什么用户很长时间不更新 app? - 知乎1497被浏览41300分享邀请回答01 条评论分享收藏感谢收起输入关键字或相关内容进行搜索
5+应用可使用以下方式进行升级
- :适用于大版本更新,新增5+模块时必须使用此类更新方法
- :适用于小版本更新
- :适用于小版本更新本文重点介绍5+应用资源独立升级,相对整包升级有以下优势:
1. 无需重新提交应用市场审核更新,降低更新周期;
2. 无需用户手动点击操作安装更新,优化用户体验;
3. App资源相对整包体积更小,升级速度更快。生成移动App资源升级包\n需HBuilder5.4.0以上版本才有此功能
在HBuilder中编辑好新的移动App资源后,更新manifest.json的版本号
原来版本是1.0,新版本修改为2.0:
在HBuilder中生成升级包文件(wgt)
菜单“发行” -& “制作移动App资源升级包”:
在以下界面中通过“浏览”按钮选择保存路径,点击“确定”保存wgt文件:
生成wgt后提交到手机可访问的网络地址
App资源升级包下载地址:
为了模拟正常的升级检测流程,添加以下检测升级地址(返回最新版本号):
\n应用中检测更新资源\n检测服务器上是否有新版本\n
获取当前应用的版本号
\nvar wgtVer=
function plusReady(){
// 获取本地应用资源版本号
plus.runtime.getProperty(plus.runtime.appid,function(inf){
wgtVer=inf.
console.log(&当前应用版本:&+wgtVer);
if(window.plus){
plusReady();
document.addEventListener('plusready',plusReady,false);
发起ajax请求检测是否有新版本
\n// 检测更新
var checkUrl=&http://demo./test/update/check.php&;
function checkUpdate(){
plus.nativeUI.showWaiting(&检测更新...&);
var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function(){
switch(xhr.readyState){
plus.nativeUI.closeWaiting();
if(xhr.status==200){
console.log(&检测更新成功:&+xhr.responseText);
var newVer=xhr.responseT
if(wgtVer&&newVer&&(wgtVer!=newVer)){
downWgt();
// 下载升级包
plus.nativeUI.alert(&无新版本可更新!&);
console.log(&检测更新失败!&);
plus.nativeUI.alert(&检测更新失败!&);
xhr.open('GET',checkUrl);
xhr.send();
\n更新应用资源\n
从服务器下载应用资源包(wgt文件)
\n// 下载wgt文件
var wgtUrl=&http://demo./test/update/H5EF3C469.wgt&;
function downWgt(){
plus.nativeUI.showWaiting(&下载wgt文件...&);
plus.downloader.createDownload( wgtUrl, {filename:&_doc/update/&}, function(d,status){
if ( status == 200 ) {
console.log(&下载wgt成功:&+d.filename);
installWgt(d.filename); // 安装wgt包
console.log(&下载wgt失败!&);
plus.nativeUI.alert(&下载wgt失败!&);
plus.nativeUI.closeWaiting();
}).start();
更新应用资源包(wgt文件)
\n// 更新应用资源
function installWgt(path){
plus.nativeUI.showWaiting(&安装wgt文件...&);
plus.runtime.install(path,{},function(){
plus.nativeUI.closeWaiting();
console.log(&安装wgt文件成功!&);
plus.nativeUI.alert(&应用资源更新完成!&,function(){
plus.runtime.restart();
},function(e){
plus.nativeUI.closeWaiting();
console.log(&安装wgt文件失败[&+e.code+&]:&+e.message);
plus.nativeUI.alert(&安装wgt文件失败[&+e.code+&]:&+e.message);
\n其它可改进的思路\n
检测更新更好的模式应该是客户端提交本地应用资源版本号到升级服务器,由升级服务器判断是否可更新并且返回App升级资源包下载地址,避免在客户端写资源下载地址;
更新时可以在后台静默下载,下次启动是直接更新,避免更新时打断用户操作。
差量升级更新App资源,参考
\n附件testUpdate.zip为测试移动App包App store应用更新说明
应用资源更新肯定是违反apple政策的,但目前看起来它也不管。你在官网案例那里下载Appstore版本的那些app,大多启动后都会提示更新,反正也都没下架。如果你不是很大的公司,apple不会理睬你。如果你是大公司,建议不要做整体更新,每次更新几个页面,也不要提示更新后需要重启,这样会安全点。
HBuilder 8.1.3. IOS 自动升级正常, 安卓 自动更新失败, 回调返回的 err
是 null, 没有任何错误信息!
PHP端 代码往哪 可以下载啊
请问这个filename的路径是啥
plus.runtime.getProperty获取的是资源更新包更新后的版本号。plus.runtime.version获取的是打包时的版本号。初始的时候两者的版本号是一样。而后你用wgt更新包更新了app,plus.runtime.getProperty获取的就是新版本号。plus.runtime.version获取的依然是旧的。除非你重新打包APK
好像没搞定,我都忘记了。。。。
麻烦问下你这个问题怎么解决的?
我也遇到了这个问题,现已解决.
一开始以为是自己生成的&资源升级包&有问题,重新生成后还是不行,最后发现是&资源升级包&在升级服务器上放错了位置,导致APP请求的到升级包是旧的,当然里面的版本号不对了.这里有个方法可以直观查看是否是这方面的错误,就是查看手机上下载下来的升级包(用文件管理器搜索升级包文件名,在手机内部存储中)中版本号到底是否正确: 将该文件传到电脑上,加上.rar扩展名可直接打开查看里面的内容 ,可看到manifest.json中version是否正确就OK了.
大神,你的离线包更新做好了吗?求教方法
ios离线打的包怎么做升级啊。我把离线包的文件放在hbuider里面直接成web类型的工程了。生成升级包的选项直接置灰不可选了。急求
获取版本的问题,用plus.runtime.getProperty来获取version这是当前运行的版本号,用plus.runtime.version获取的一直是APP版本号
你好!资源升级包可以替换启动图片(splash)吗?我原来的splash在包里面,替换为新的图片后客户端安装升级包后还是原来的,请问如何处理,谢谢!
按照这个上面写的,获取不到wgtVer,在管理终端上显示是null。请问怎么解决?
你的怎么好的啊?我的一直提示缺少maps
补充一下是应用资源升级方式
Android 能更新成功 但是ios在下载更新包阶段就一直卡着 下载不成功。。
function downWgt(wgtUrl){
plus.nativeUI.showWaiting(&下载更新包...&);
console.log(wgtUrl);
plus.downloader.createDownload( wgtUrl, {filename:&_doc/update/&,timeout:10}, function(d,status){
if ( status == 200 ) {
console.log(&下载更新包成功:&+d.filename);
installWgt(d.filename); // 安装wgt包
console.log(&下载更新包失败!&);
plus.nativeUI.alert(&下载更新包失败!&);
plus.nativeUI.closeWaiting();
}).start();
就卡在这个函数的处理上了。。。有遇到相同情况的吗?
dcloud的官方人员真是欠骂,做个教程也不做全,别人问问题了也不认真回答,上面的升级方法,自定义插件报找不到模块你们自己试过吗?离线打包自己写了原生android代码的能升级吗?说白了上面的升级方法只适用于包含官方插件的app,现在用官方的那些插件很难满足用户的所有需求吧,用户自己个性化需求肯定是自己通过插件的形式去实现的,这样一来这个升级难道没有必要做个带第三方插件的升级教程?不能升的话也请注明好不好?
我按照官方的update.js整包更新,安装包下载完成后点击安装没问题,点击取消停止安装但是马上会弹出安装成功,plus.runtime.install没有判断点击的是哪个嘛??????求解
下载之后再安装界面,点击取消还是执行onSuccess方法里面的代码??这是怎么回事?
写完全啊,check.php这个文件是什么内容?新手看的纠结 看了 是蒙蒙的 知道对比版本 但是具体的操作还是不很了解
wgt文件包,安装完之后。如何删除啊?越积越多
应用中检测更新资源 中的代码应该写在哪里?????
应用中检测更新资源 中的代码应该写在哪里?????
应用中检测更新资源 中的代码应该写在哪里?????
ios更新的时候需要再次审核么?
这个你试了没有,需要再次审核么?
这个你试了没有,需要再次审核么?
这个升级方式,和整包升级有什么区别么?只差一个不需要重新安装么?
写完全啊,check.php这个文件是什么内容?新手看的纠结
版本号有问题的同学可以看下这篇文章:
http://ask./article/1019
echo &2.0&;
官方的demo输出的就是字符串
有知道怎么点击退出按钮退出ios应用的吗?Android可以退出,ios退出不了
离线打包静态资源是放在asserts目录下的,asserts目录下的资源只能读取不能修改,请问一下这样的情况下有什么办法可以实现App资源在线更新吗
php文件是怎么写的,里面返回的是数组还是字符串或者是json,谁能给个最简单的例子,类似这个教程上面的
+1请问 怎么解决的
兄弟,问题解决了吗
你遇见过安装wgt文件失败,提示wgt安装包中的manifest.json文件的version版本不匹配的问题吗?
你这个解决了吗,我也遇见了
这个必须mark下
我也遇到了这个问题,请问你是怎么解决的
我按照教程在mainfest.json添加了一个自定义插件plugintest后,再安装就提示缺少plugintest插件,这个插件的原生代码是写在anroid项目中,还有如果服务器的版本号&=webapp的版本号,会提示版本号不匹配。
乐视2 Android6.0 ,跳转到浏览器下载了,无法执行回调函数了
android webview方式集成,升级成功,强杀应用后重启又变回老版本了 怎么解决?谁知道官方QQ群是多少
check.php 这个文件里面的内容是什么?
wgt更新,如果有涉及到css文件的更新,ios的restart方法是不会生效的,还是老的css,必须杀进程重启才行,这样的用户体验实在太差,不知道是bug还是我的用法不对。如果是bug,请尽快修复,不然该功能完全没办法在生产上使用。
同上, 资源更新之后 不管是 restart 还是 手动关闭再开, 都是旧版本号. 估计是资源安装的时候 manifest 文件没有替换?
安装wgt文件失败[-1229]:HTML5+ Runtime缺少升级包manifest.json中配置的模块:nativeobj
这个问题怎么解决的?
同上, 资源更新之后 不管是 restart 还是 手动关闭再开, 都是旧版本号.
估计是资源安装的时候 manifest 文件没有替换?
重启了,版本还是老的
同样问题,下载更新都没问题,更新之后重启应用,版本号还是老的.
重启了 还是没用。还是原来的 1.0 版本
我用 plus.runtime.version 应该是对的吧。
升级完成需要重启应用版本号才会更新
我也是这个问题。你解决了吗?
请问一下。我升级后,原先的版本号没更新成最新的。这是怎么回事。
获取当前版本号 不稳定。怎么解决
有解决吗?更新也碰到这样,版本不匹配,-1205错误,而且版本号没变
有解决吗?我也碰到这种问题了
HBuilder6.9.0版本中导出的wgt文件格式不正确(文件中多了一层目录,暂时可以手动删除目录,再zip压缩生成wgt),稍后会紧急更新。
只能更新一次 第二次需要清除缓存数据才能更新 不然提示:安装更新文件失败[-1205]:WGT安装包中manifest.json版本不匹配
我也发现更新以后 版本号还是之前的版本号 很大的一个问题 难道没有人有好的处理方式吗
大家有发现这个问题吗??
.wgt 包内的manifest.json为何会出现内容不完整的问题呢??我本地是用5+SDK打包发布的。。发现官网生成本地打包APP资源和生成wgt时,manifest.json都不是完整的项目内容。少了很多配置信息,比如分享配置和其他一些配置。
为什么plus.runtime.restart(); 升级成功之后没有反应,必须手动退出重新打开之后才是升级之后的内容?
首次下载一直失败,文件已经下载成功了,但是status始终到不了200...what a fuck!
提示更新完成,实际上还是老版本号
有没有解决了?我也和你一样
是的啊,上面的代码过程有判断,有下载,有安装,就是没有安装完成后更新版本号的信息。
收藏 慢慢看
感觉这个很有用
用6.4.0hbuilder打包的wgt,每次都提示not a zip archive,可是,demo却可以升级成功,都是照搬的,而且,将wgt资源改成官方demo的wgt包,也可以成功升级,请问下是不是打包过程要注意什么?
虽然还没有用到,但是已经感觉相当犀利,开始还是先了解到的apicloud,然后才发现dcloud,推广方面要加把劲,力挺
他不是回复了么,不影响的
你这个问题 解决了没?
用了这个方法,但是不知道为什么到安装的时候老是提示“应用未安装”?
安装wgt文件失败,提示wgt安装包中的manifest.json文件的version版本不匹配是什么原因啊?
请确认是哪个平台出现此问题,然后到QQ群里联系下管理员:iOS对应找DCloud_iOS开头的管理员,Android对应找DCloud_Android开头的管理员
已确认此问题,不会影响功能,下此更新版本会修复输出此日志的问题
我的也是这样,重启就恢复了
createDownload().start()语法就直接错了呀..Uncaught SyntaxError: Unexpected token } 调试了好几遍 应该就是start错了 不知道为什么
具体加我QQ
具体加我QQ
很简单啊 本地通过ajax把当前版本上传到服务器 服务器跟最新版本号进行比较 一样则提示 已是最新版无需更新 不一样则调用对应方法 方法 hbuilder demo里面 有的
很简单啊 本地通过ajax把当前版本上传到服务器 服务器跟最新版本号进行比较 一样则提示 已是最新版无需更新 不一样则调用对应方法 方法 hbuilder demo里面 有的
请问这个PHP怎么写啊
对应的php服务端要怎么写呢?
实际上这个问题在问答页面置顶了,你去那看下
我也发现这样的问题,有办法解决嘛?
安装wgt文件失败[-1229]:HTML5+ Runtime缺少升级包manifest.json中配置的模块:maps
安装wgt文件失败[-1229]:HTML5+ Runtime缺少升级包manifest.json中配置的模块:nativeobj
【BUG】这种在线升级有bug,当你升级完成以后。到手机应用管理中清楚本软件的缓存数据,会返回到安装的那一版本,以前升级数据也随之删除了。
安装wgt文件失败,提示wgt安装包中的manifest.json文件的version版本不匹配是什么原因啊?
你发的这个例子也有这个问题
升级后,清理自己本程序里的所有缓存和数据,又回复到了旧版本,怎么解决?
php服务端,如何返回最新的版本号,有没有demol参考?
我也碰到了这个问题?你解决了吗?
请问可以发一下 对应的服务器端代码吗
无法用进度条来展现下载情况吗?
之前是好的,最近测试之后发现下载成功后闪退,不知道是什么原因啊
要回复文章请先或}

我要回帖

更多关于 快递物流长时间不更新 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信