起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2902|回复: 7

[处理中4] APP版本更新

[复制链接]

2

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
QQ
发表于 2016-11-22 09:43:32 | 显示全部楼层 |阅读模式
新手 求助 有没有大神 给个更新的例子   我看的官方的那个 更新 引入 appVersionChecker.js、appVersion_in_server.js   在界面 require(['./appVersionChecker']);  
不好用啊   X5 版本 3.5  

1

主题

6163

帖子

2095

积分

金牌会员

Rank: 6Rank: 6

积分
2095
QQ
发表于 2016-11-22 09:56:38 | 显示全部楼层
关于代码更新,有两个优先级!
如果你没有自己接管代码更新,默认使用的是:UI2/system/components/justep/versionChecker/versionChecker.js

如果你自己在index首页的同级目录写了:appVersionChecker.js 和 appVersion_in_server.js,并且js引入 :require(['./appVersionChecker']);

(可以参考:/UI2/portal/sample/appVersionChecker.js)

那么APP的资源更新代码就优先使用这个!你可以在appVersionChecker.js 中写自己的代码实现!
还可以看下:http://docs.wex5.com/app-version-update-v3-3/
回复 支持 反对

使用道具 举报

2

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
QQ
 楼主| 发表于 2016-11-22 10:04:20 | 显示全部楼层
我已经引入过了 不好用啊  有没有model  可以看一下 或者有具体的 说明(我是个新手)
回复 支持 反对

使用道具 举报

发表于 2016-11-22 11:27:10 | 显示全部楼层
官方有案例!你可以修改代码调试测试下:/UI2/portal/sample/appVersionChecker.js
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

2

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
QQ
 楼主| 发表于 2016-11-23 10:20:39 | 显示全部楼层
  1. //appVersionChecker.js  
复制代码

appVersion_in_server.js
  1. define(function(require){
  2.         var versionInfo = {
  3.           androidApp:{
  4.                   version:"1.0.0",
  5.                   changeLog:"请填写版本更新内容",
  6.                   downloadUrl:"http://192.168.10.62:8080/app/app.apk"
  7.           },
  8.           iosApp:{
  9.                   version:"1.0.0",
  10.                   changeLog:"请填写版本更新内容",
  11.                   downloadUrl:"http://192.168.10.62:8080/app/app.apk"
  12.           }
  13.         };
  14.         return versionInfo;
  15. });
复制代码


713186482975192254.png       一直会报这个 错误 object # has no method indexof  没看出来哪里出问题了
回复 支持 反对

使用道具 举报

2

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
QQ
 楼主| 发表于 2016-11-23 10:22:07 | 显示全部楼层
appVersionChecker.js  

  1. define(function(require){
  2.         var $ = require('jquery');
  3.         var versionInfo;
  4.         var Browser = require('$UI/system/lib/base/browser');
  5.         var justep = require("$UI/system/lib/justep");
  6.         var MsgDialog = require("$UI/system/components/justep/messageDialog/messageDialog");
  7.         require("cordova!cordova-plugin-app-version");
  8.         require("cordova!cordova-plugin-inappbrowser");
  9.        
  10.         var parentNode = $('body').find('.window').get(0);
  11.        
  12.         var VersionChecker = function(){
  13.                 this.env = "browser";
  14.                 if(Browser.isX5App){
  15.                         if(Browser.isAndroid){
  16.                                 this.env = "androidApp";
  17.                         }
  18.                         if(Browser.isIOS){
  19.                                 this.env = "iosApp";
  20.                         }
  21.                 }
  22.                 //this.env = "androidApp";

  23.                 this.versionMsg = new MsgDialog({
  24.                         parentNode:parentNode
  25.                 });
  26.                 var $domNode = this.versionMsg.$domNode;
  27.                 $domNode.find('.Yes').text('更新');
  28.                 $domNode.find('.No').text('忽略');
  29.                 this.versionMsg.on('onYes', function(event) {
  30.                         //下载
  31.                         this.download();
  32.                 }, this);
  33.                 this.versionMsg.on('onNo', function(event) {
  34.                         //忽略
  35.                         this.ignore();
  36.                 }, this);
  37.                 var self = this;
  38.                   
  39.                 document.addEventListener("deviceready", function() {
  40.                         setTimeout(function(){
  41.                                 self.check();
  42.                         },1000);
  43.                 });
  44.         };
  45.        
  46.         VersionChecker.prototype.check = function(){
  47.                 var self = this;  
  48.                 cordova.getAppVersion.getVersionNumber(function (currentVersion) {
  49.                 justep.Util.hint("当前版本!"+currentVersion);
  50.                         require(['$UI/test/appVersion_in_server'],function(version_info){
  51.                         justep.Util.hint("进到判断");
  52. //                                if(version_info){
  53. //                                        versionInfo = version_info;
  54. //                                        if(versionInfo[self.env] && currentVersion < versionInfo[self.env].version && window.localStorage &&
  55. //                                                        localStorage.getItem('versionIgnore') !== versionInfo[self.env].version){
  56. //                                                self.versionMsg.show({
  57. //                                                        type : "YesNoCancel",
  58. //                                                        title : "版本更新",
  59. //                                                        message : versionInfo[self.env].changeLog
  60. //                                                });
  61. //                                        }  
  62. //                                }
  63.                         },function(){
  64.                         justep.Util.hint("检查失败");                                            
  65.                                 console.log('检查版本失败!');
  66.                         });
  67.                 });
  68.         };
  69.        
  70.         VersionChecker.prototype.download = function(){
  71.             justep.Util.hint("download 方法!");
  72.                 window.open(versionInfo[this.env].downloadUrl,'_system');
  73.         };
  74.        
  75.         VersionChecker.prototype.ignore = function(){
  76.             justep.Util.hint("ignore 方法!");
  77.                 justep.Util.hint("方法nei:"+window.localStorage);  
  78.                 if(window.localStorage){
  79.                         localStorage.setItem('versionIgnore',versionInfo[this.env].version);
  80.                 }
  81.         };
  82.        
  83.         return new VersionChecker();
  84. });
复制代码
回复 支持 反对

使用道具 举报

2

主题

8

帖子

16

积分

新手上路

Rank: 1

积分
16
QQ
 楼主| 发表于 2016-11-23 10:26:42 | 显示全部楼层
求助 老司机
回复 支持 反对

使用道具 举报

130

主题

319

帖子

807

积分

高级会员

Rank: 4

积分
807
QQ
发表于 2016-11-30 19:00:34 | 显示全部楼层

楼主。解决了没有
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-22 23:54 , Processed in 0.053713 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表