s-num-old"> 806
			(new Function("this.parseArray(" +str+")")).apply(this);	
816
			//console.log("#####this.parseArray");
817
			return window.JSON && window.JSON.parse ? this.parseArray(window.JSON.parse(str)) : 
818
				(new Function("this.parseArray(" +str+")")).apply(this);	
807
		},
819
		},
808
		parseArray:function(o){
820
		parseArray:function(o){
809
			for(var i=0;i<o.length;i++){
821
			for(var i=0;i<o.length;i++){

+ 349 - 353
general-web-server/web/res/js/wade-mobile.js

1
window.Mobile = window.WadeMobile = (function(Wade,Base64) {
2
	//终端类型,a为android,i为ios
3
    var terminalType = (function(){
4
		var sUserAgent = navigator.userAgent.toLowerCase();
5
		var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
6
		var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";
7
		var bIsAndroid = sUserAgent.match(/android/i) == "android";
8
		var bIsWinphone = sUserAgent.match(/windows phone /i) == "windows phone " || sUserAgent.match(/windows phone os /i) == "windows phone os ";
9
		if(bIsAndroid){
10
			return "a";
11
		}else if(bIsIpad||bIsIphoneOs){
12
			return "i";
13
		}else if(bIsWinphone){
14
			return "w";
15
		}else{
16
			return null;
17
		}
18
	})();
19
	
20
	WadeMobile = (function(){
21
        return{
22
        	isAndroid:function(){
23
        		return terminalType=='a';
24
        	},isIOS:function(){
25
        		return terminalType=='i';
26
        	},isWP:function(){
27
        		return terminalType=='w';
28
        	},isApp:function(){//判断是否是APP应用
29
				return terminalType!=null;
30
        	},getSysInfo:function(callback,key,err){//TELNUMBER|IMEI|IMSI|SDKVERSION|OSVERSION|PLATFORM|SIMNUMBER
31
				WadeMobile.callback.storageCallback("getSysInfo",callback);
32
				execute("getSysInfo", [key],err);
33
			},close:function(confirm,err){
34
				if(typeof(confirm)!="boolean"){
35
					confirm = true;
36
				}
37
				execute("close", [confirm],err);
38
			},httpRequest:function(callback,requestUrl,isEscape,encode,conTimeout,readTimeout,err){
39
				if (isEscape == undefined) {
40
					isEscape = true;
41
				}
42
				if(terminalType=="i"){
43
					requestUrl = encodeURIComponent(requestUrl);
44
				}
45
				WadeMobile.callback.storageCallback("httpRequest",callback,isEscape);
46
				execute("httpRequest", [requestUrl,isEscape,encode,conTimeout,readTimeout],err);
47
			},dataRequest:function(callback,dataAction,param,isEscape,encode,conTimeout,readTimeout,err){
48
				if (isEscape == undefined) {
49
					isEscape = true;
50
				}
51
				WadeMobile.callback.storageCallback("dataRequest",callback,isEscape);
52
				execute("dataRequest", [dataAction,param,isEscape,encode,conTimeout,readTimeout],err);
53
			},openUrl:function(url,err){
54
				execute("openUrl", [encodeURIComponent(url)],err);
55
			},openPage:function(action,data,err){
56
				execute("openPage", [action,data],err);
57
			},openTemplate:function(action,context,err){
58
				execute("openTemplate", [action,context],err);
59
			},back:function(err){
60
				execute("back", [],err);
61
			},getPage:function(callback,action,param,err){
62
				var isEscape = true;
63
				WadeMobile.callback.storageCallback("getPage",callback,isEscape);
64
				execute("getPage", [action,param,isEscape],err);
65
			},getTemplate:function(callback,action,context,err){
66
				var isEscape = true;
67
				WadeMobile.callback.storageCallback("getTemplate",callback,isEscape);
68
				execute("getTemplate", [action,context,isEscape],err);
69
			},storageDataByThread:function(dataAction,param,waitoutTime,err){
70
				execute("storageDataByThread", [dataAction,param,waitoutTime],err);
71
			},openDialog:function(callback,pageAction,param,width,height,isEscape,err){
72
				if (isEscape == undefined) {
73
					isEscape = true;
74
				}
75
				WadeMobile.callback.storageCallback("openDialog",callback,isEscape);
76
				execute("openDialog", [pageAction,param,width,height,isEscape],err);
77
			},closeDialog:function(result,state,err){
78
				execute("closeDialog", [result,state],err);
79
			},openWindow:function(callback,pageAction,param,isEscape,err){
80
				if (isEscape == undefined) {
81
					isEscape = true;
82
				}
83
				WadeMobile.callback.storageCallback("openWindow",callback,isEscape);
84
				execute("openWindow", [pageAction,param,isEscape],err);
85
			},closeWindow:function(result,state,err){
86
				execute("closeWindow", [result,state],err);
87
			},openSlidingMenu:function(callback,action,param,width,height,leftMargin,topMargin,isEscape,err){
88
				WadeMobile.callback.storageCallback("openSlidingMenu",callback,isEscape);
89
				execute("openSlidingMenu", [action,param,width,height,leftMargin,topMargin,isEscape],err);
90
			},closeSlidingMenu:function(result,state,err){
91
				execute("closeSlidingMenu", [result,state],err);
92
			}
93
		};
94
	})();
95
	
96
	//全局变量
97
	var callbackId = 0;
98
	var callbacks = {};//用来存放成功和失败的js回调函数
99
	var callbackDefine = {};//用来存放自定义的js回调函数
100
	var globalErrorKey = null;//全局错误关键字,定位错误
101
	
102
	/*绝大多数情况下,success回调函数是用不上的,有需要回调函数的时候异步方式传入取值*/
103
	var execute = function(action, args, error, success){
104
        args = stringify(args);
105
		if(terminalType=="a"){
106
			androidExecute(action, args, error, success);
107
		}else if(terminalType=="i"){
108
			iosExecute(action, args, error, success);
109
		}else if(terminalType=="w"){
110
			winphoneExecute(action, args, error, success);
111
		}else{
112
			//alert("无终端类型");
113
			//iosExecute(action, args, error, success);
114
		}
115
	};
116
	
117
	WadeMobile.execute = execute;
118
	
119
	var androidExecute = function(action, args, error, success){
120
        var callbackKey = globalErrorKey = action+callbackId++;
121
        if (success || error) {
122
    		callbacks[callbackKey] = {success:success, error:error};
123
        }
124
        if(WadeMobile.debug){
125
        	//alert("准备调用"+action+" 参数:"+args);
126
        	console.log("action:"+action+" param:"+args);
127
        }
128
        PluginManager.exec(action, callbackKey, args);
129
        globalErrorKey = null;
130
	};
131
 
132
    var iosExecute = function(action, args, error, success){
133
        var callbackKey = globalErrorKey = action+callbackId++;
134
        if (success || error) {
135
            callbacks[callbackKey] = {success:success, error:error};
136
        }
137
        if(WadeMobile.debug){
138
            //alert("准备调用"+action+" 参数:"+args);
139
            console.log("action:"+action+" param:"+args);
140
        }
141
        var WADE_SCHEME = "wade://";
142
        var url = WADE_SCHEME+action+"?param="+args+"&callback="+callbackKey;
143
        //var ifrmName = action;
144
        //一个动作请求客户端的最大数量,超过会造成请求覆盖
145
        var limitAction = 10;
146
        var ifrmName = "WADE_FRAME_"+(callbackId%limitAction);
147
        var ifrm = document.getElementById(ifrmName);
148
        if(!ifrm){
149
            var ifrm = document.createElement("iframe");
150
            ifrm.setAttribute("id",ifrmName);
151
            ifrm.setAttribute("width","0");
152
            ifrm.setAttribute("height","0");
153
            ifrm.setAttribute("border","0");
154
            ifrm.setAttribute("frameBorder","0");
155
            ifrm.setAttribute("name",ifrmName);
156
            document.body.appendChild(ifrm);
157
        }
158
        document.getElementById(ifrmName).src = encodeURI(url);
159
        //document.getElementById(ifrmName).contentWindow.location = encodeURI(invocation);
160
        globalErrorKey = null;
161
	};
162
	
163
	var winphoneExecute = function(action, args, error, success){
164
        var callbackKey = globalErrorKey = action+callbackId++;
165
        if (success || error) {
166
    		callbacks[callbackKey] = {success:success, error:error};
167
        }
168
        if(WadeMobile.debug){
169
        	//alert("准备调用"+action+" 参数:"+args);
170
        	console.log("action:"+action+" param:"+args);
171
        }
172
      	window.external.Notify(stringify([action, callbackKey, args])); //[action, callbackKey, args]
173
      	globalErrorKey = null;
174
	};
175
	
176
	WadeMobile.callback = (function(){
177
		return{
178
			success:function(callbackKey, message) {
179
				if(typeof message == "undefined"){
180
					return;
181
				}
182
			    if (callbacks[callbackKey]) {
183
	                if (callbacks[callbackKey].success) {
184
	                	if(typeof callbacks[callbackKey].success==="function"){
185
	                		var func = callbacks[callbackKey].success;
186
	                		func(message);
187
	                	}else{
188
	                		_eval(callbacks[callbackKey].success+"('"+message+"','"+callbackKey+"')");
189
	                	}
190
	                }
191
			        if (callbacks[callbackKey]) {
192
			            delete callbacks[callbackKey];
193
			        }
194
			    }
195
			},error:function(callbackKey, message) {
196
				if(typeof message == "undefined"){
197
					return;
198
				}
199
			    if (callbacks[callbackKey]) {
200
		            if (callbacks[callbackKey].error) {
201
		                if(typeof callbacks[callbackKey].error==="function"){
202
		                	var func = callbacks[callbackKey].error;
203
		                	func(message);
204
	                	}else{
205
	                		_eval(callbacks[callbackKey].error+"('"+message+"','"+callbackKey+"')");
206
	                	}
207
		            }
208
			        if (callbacks[callbackKey]) {
209
			            delete callbacks[callbackKey];
210
			        }
211
			    }else{
212
			    	alert(message);
213
			    }
214
			},storageCallback:function(action,callback,isEscape,isBase64){
215
				var callbackKey = action+callbackId;
216
				if (callback) {
217
		            callbackDefine[callbackKey] = {callback:callback,isEscape:isEscape,isBase64:isBase64};
218
		        }
219
			},execCallback:function(callbackKey, data){
220
				globalErrorKey = callbackKey;
221
				var callbackItem= callbackDefine[callbackKey];
222
				if (callbackItem) {
223
					data = data=="null"?null:data;
224
		        	if(data){
225
		        		if(callbackItem.isEscape==true){
226
		        			data = unescape(data);
227
		        		}else if(callbackItem.isBase64==true){
228
		        			data = Base64.decode64(data);
229
		        		}
230
		        	}
231
		            if (callbackItem.callback) {   
232
		                if(typeof callbackItem.callback==="function"){
233
		                	var func = callbackItem.callback;
234
		                	func(data);
235
	                	}else{
236
	                		_eval(callbackItem.callback+"('"+data+"','"+callbackKey+"')");
237
	                	}
238
		            }
239
			        if (callbackItem) {
240
			            delete callbackDefine[callbackKey];
241
			        }
242
			    }
243
				globalErrorKey = null;
244
			}
245
		};
246
	})();
247
	
248
	WadeMobile.event = (function(){
249
		if(WadeMobile.isApp()){
250
			var e = document.createEvent('Events');
251
			return {
252
				back:function(){
253
					e.initEvent('backKeyDown');
254
					document.dispatchEvent(e);
255
				},menu:function(){
256
					e.initEvent('menuKeyDown');
257
				    document.dispatchEvent(e);
258
				},search:function(){
259
					e.initEvent('searchKeyDown');
260
				    document.dispatchEvent(e);
261
				}
262
			};
263
		}
264
	})();
265
	
266
	/************公共方法**************/
267
	/**
268
	 * @param {String}  errorMessage   错误信息
269
	 * @param {String}  scriptURI      错误文件
270
	 * @param {Long}    lineNumber     错误行号
271
	 */
272
	window.onerror = function(errorMessage, scriptURI, lineNumber) {
273
		var msgArray = new Array();
274
		if (errorMessage)
275
			msgArray.push("错误信息:" + errorMessage);
276
		if (lineNumber)
277
			msgArray.push("错误行号:" + lineNumber);
278
		if (globalErrorKey)
279
			msgArray.push("错误关键字:" + globalErrorKey);
280
		if (scriptURI)
281
			msgArray.push("错误文件:" + scriptURI);
282
		var msg = msgArray.join("\t\n");
283
		console.log(msg);
284
		alert(msg);
285
	};
286
	
287
	//动态执行js方法
288
	function _eval(code,action){
289
		if(WadeMobile.debug){
290
			alert(code);
291
		}
292
		var func = eval(code);
293
		if(typeof func==="function"){
294
			func();
295
		}
296
	}
297
	//格式转换方法
298
	function stringify(args) {
299
	    if (typeof JSON == "undefined") {
300
	        var s = "[";
301
	        for (var i=0; i<args.length; i++) {
302
	            if (i > 0) {
303
	                s = s + ",";
304
	            }
305
	            var type = typeof args[i];
306
	            if ((type == "number") || (type == "boolean")) {
307
	                s = s + args[i];
308
	            }
309
	            else if (args[i] instanceof Array) {
310
	            	s = s + "[" + args[i] + "]";
311
	            }
312
	            else if (args[i] instanceof Object) {
313
	            	var start = true;
314
	            	s = s + '{';
315
	            	for (var name in args[i]) {
316
	            		if (args[i][name] != null) {
317
		            		if (!start) {
318
		            			s = s + ',';
319
		            		}
320
		            		s = s + '"' + name + '":';
321
		            		var nameType = typeof args[i][name];
322
		            		if ((nameType == "number") || (nameType == "boolean")) {
323
		            			s = s + args[i][name];
324
		            		}
325
		            		else if ((typeof args[i][name]) == 'function') {
326
			           			// don't copy the functions
327
		            			s = s + '""'; 
328
		            		}
329
		            		else if (args[i][name] instanceof Object) {
330
		            			s = s + stringify(args[i][name]);
331
		            		}
332
		            		else {
333
		                        s = s + '"' + args[i][name] + '"';            			
334
		            		}
335
		                    start=false;
336
		                 }
337
	            	} 
338
	            	s = s + '}';
339
	            }else {
340
	                var a = args[i].replace(/\\/g, '\\\\');
341
	                a = a.replace(/"/g, '\\"');
342
	                s = s + '"' + a + '"';
343
	            }
344
	        }
345
	        s = s + "]";
346
	        return s;
347
	    }
348
	    else {
349
	        return JSON.stringify(args);
350
	    }
351
	};
352
	return WadeMobile;
353
})();
1
/**
2
 * 与客户端交互的基础API
3
 */
4
window.Mobile = window.WadeMobile = (function(Wade,Base64) {
5
	//终端类型,a为android,i为ios
6
	var deviceType = (function(){
7
		var sUserAgent = navigator.userAgent.toLowerCase();
8
		var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";
9
		var bIsIphone = sUserAgent.match(/iphone os/i) == "iphone os";
10
		var bIsAndroid = sUserAgent.match(/android/i) == "android";
11
		var bIsWinphone = sUserAgent.match(/windows phone /i) == "windows phone " || sUserAgent.match(/windows phone os /i) == "windows phone os ";
12
		if(bIsAndroid){
13
			return "a";
14
		}else if(bIsIpad||bIsIphone){
15
			return "i";
16
		}else{
17
			return null;
18
		}
19
	})();
20
	if(!window["TerminalType"]){
21
		window["TerminalType"] = deviceType;
22
	}
23
	var terminalType = window["TerminalType"];
24
	WadeMobile = (function(){
25
        return{
26
        	isAndroid:function(){
27
        		return terminalType=='a';
28
        	},isIOS:function(){
29
        		return terminalType=='i';
30
        	},isWP:function(){
31
        		return terminalType=='w';
32
        	},isApp:function(){//判断是否是APP应用
33
				return terminalType!=null;
34
        	},getSysInfo:function(callback,key,err){//TELNUMBER|IMEI|IMSI|SDKVERSION|OSVERSION|PLATFORM|SIMNUMBER
35
				WadeMobile.callback.storageCallback("getSysInfo",callback);
36
				execute("getSysInfo", [key],err);
37
			},close:function(confirm,err){
38
				if(typeof(confirm)!="boolean"){
39
					confirm = true;
40
				}
41
				execute("close", [confirm],err);
42
			},httpRequest:function(callback,requestUrl,encode,conTimeout,readTimeout,err){
43
				if(terminalType=="i"){
44
					requestUrl = encodeURIComponent(requestUrl);
45
				}
46
				WadeMobile.callback.storageCallback("httpRequest",callback);
47
				execute("httpRequest", [requestUrl,encode,conTimeout,readTimeout],err);
48
			},dataRequest:function(callback,dataAction,param,encode,conTimeout,readTimeout,err){
49
				WadeMobile.callback.storageCallback("dataRequest",callback);
50
				execute("dataRequest", [dataAction,param,encode,conTimeout,readTimeout],err);
51
			},openUrl:function(url,err){
52
				execute("openUrl", [encodeURIComponent(url)],err);
53
			},openPage:function(action,data,err){
54
				execute("openPage", [action,data],err);
55
			},openTemplate:function(action,context,err){
56
				execute("openTemplate", [action,context],err);
57
			},back:function(err){
58
				execute("back", [],err);
59
			},getPage:function(callback,action,param,err){
60
				WadeMobile.callback.storageCallback("getPage",callback);
61
				execute("getPage", [action,param],err);
62
			},getTemplate:function(callback,action,context,err){
63
				WadeMobile.callback.storageCallback("getTemplate",callback);
64
				execute("getTemplate", [action,context],err);
65
			},storageDataByThread:function(dataAction,param,waitoutTime,err){
66
				execute("storageDataByThread", [dataAction,param,waitoutTime],err);
67
			},openDialog:function(callback,pageAction,param,width,height,err){
68
				WadeMobile.callback.storageCallback("openDialog",callback);
69
				execute("openDialog", [pageAction,param,width,height],err);
70
			},closeDialog:function(result,state,err){
71
				execute("closeDialog", [result,state],err);
72
			},openWindow:function(callback,pageAction,param,err){
73
				WadeMobile.callback.storageCallback("openWindow",callback);
74
				execute("openWindow", [pageAction,param],err);
75
			},closeWindow:function(result,state,err){
76
				execute("closeWindow", [result,state],err);
77
			},openSlidingMenu:function(callback,action,param,width,height,leftMargin,topMargin,err){
78
				WadeMobile.callback.storageCallback("openSlidingMenu",callback);
79
				execute("openSlidingMenu", [action,param,width,height,leftMargin,topMargin],err);
80
			},closeSlidingMenu:function(result,state,err){
81
				execute("closeSlidingMenu", [result,state],err);
82
			}
83
		};
84
	})();
85
	
86
	//全局变量
87
	var callbackId = 0;
88
	var callbacks = {};//用来存放成功和失败的js回调函数
89
	var callbackDefine = {};//用来存放自定义的js回调函数
90
	var globalErrorKey = null;//全局错误关键字,定位错误
91
	
92
	/*绝大多数情况下,success回调函数是用不上的,有需要回调函数的时候异步方式传入取值*/
93
	var isAlert = true;//防止反复弹出alert
94
	var execute = function(action, args, error, success){
95
        args = stringify(args);
96
		if(terminalType=="a"){
97
			androidExecute(action, args, error, success);
98
		}else if(terminalType=="i"){
99
			iosExecute(action, args, error, success);
100
		}else if(terminalType=="w"){
101
			winphoneExecute(action, args, error, success);
102
		}else{
103
			if(isAlert){
104
				isAlert = false
105
				alert(action+"无终端类型");
106
			}else{
107
				console.log(action+"无终端类型");
108
			}
109
		}
110
	};
111
	
112
	WadeMobile.execute = execute;
113
	
114
	var androidExecute = function(action, args, error, success){
115
        var callbackKey = globalErrorKey = action+callbackId++;
116
        if (success || error) {
117
    		callbacks[callbackKey] = {success:success, error:error};
118
        }
119
        if(WadeMobile.debug){
120
        	//alert("准备调用"+action+" 参数:"+args);
121
        	console.log("action:"+action+" param:"+args);
122
        }
123
        PluginManager.exec(action, callbackKey, args);
124
        globalErrorKey = null;
125
	};
126
 
127
    var iosExecute = function(action, args, error, success){
128
        var callbackKey = globalErrorKey = action+callbackId++;
129
        if (success || error) {
130
            callbacks[callbackKey] = {success:success, error:error};
131
        }
132
        if(WadeMobile.debug){
133
            //alert("准备调用"+action+" 参数:"+args);
134
            console.log("action:"+action+" param:"+args);
135
        }
136
        
137
        var WADE_SCHEME = "wade://";
138
        var url = WADE_SCHEME+action+"?param="+encodeURIComponent(args)+"&callback="+callbackKey;
139
        //一个动作请求客户端的最大数量,超过会造成请求覆盖
140
        var limitAction = 10;
141
        var ifrmName = "WADE_FRAME_"+(callbackId%limitAction);
142
        var ifrm = document.getElementById(ifrmName);
143
        if(!ifrm){
144
            var ifrm = document.createElement("iframe");
145
            ifrm.setAttribute("id",ifrmName);
146
            ifrm.setAttribute("width","0");
147
            ifrm.setAttribute("height","0");
148
            ifrm.setAttribute("border","0");
149
            ifrm.setAttribute("frameBorder","0");
150
            ifrm.setAttribute("name",ifrmName);
151
            document.body.appendChild(ifrm);
152
        }
153
        document.getElementById(ifrmName).contentWindow.location = encodeURIComponent(url);
154
        //document.getElementById(ifrmName).src = encodeURI(url);//无法处理&符号
155
        globalErrorKey = null;
156
	};
157
	
158
	var winphoneExecute = function(action, args, error, success){
159
        var callbackKey = globalErrorKey = action+callbackId++;
160
        if (success || error) {
161
    		callbacks[callbackKey] = {success:success, error:error};
162
        }
163
        if(WadeMobile.debug){
164
        	//alert("准备调用"+action+" 参数:"+args);
165
        	console.log("action:"+action+" param:"+args);
166
        }
167
      	window.external.Notify(stringify([action, callbackKey, args])); //[action, callbackKey, args]
168
      	globalErrorKey = null;
169
	};
170
	
171
	WadeMobile.callback = (function(){
172
		return{
173
			success:function(callbackKey, message) {
174
				if(typeof message == "undefined"){
175
					return;
176
				}
177
			    if (callbacks[callbackKey]) {
178
	                if (callbacks[callbackKey].success) {
179
	                	if(typeof callbacks[callbackKey].success==="function"){
180
	                		var func = callbacks[callbackKey].success;
181
	                		func(message);
182
	                	}else{
183
	                		_eval(callbacks[callbackKey].success+"('"+message+"','"+callbackKey+"')");
184
	                	}
185
	                }
186
			        if (callbacks[callbackKey]) {
187
			            delete callbacks[callbackKey];
188
			        }
189
			    }
190
			},error:function(callbackKey, message, isEncode) {
191
				if(typeof message == "undefined"){
192
					return;
193
				}
194
        		if(isEncode){
195
        			message = decodeURIComponent(message);
196
        		}
197
			    if (callbacks[callbackKey]) {
198
		            if (callbacks[callbackKey].error) {
199
		                if(typeof callbacks[callbackKey].error==="function"){
200
		                	var func = callbacks[callbackKey].error;
201
		                	func(message);
202
	                	}else{
203
	                		_eval(callbacks[callbackKey].error+"('"+message+"','"+callbackKey+"')");
204
	                	}
205
		            }
206
			        if (callbacks[callbackKey]) {
207
			            delete callbacks[callbackKey];
208
			        }
209
			    }else{
210
			    	alert(message);
211
			    }
212
			},storageCallback:function(action,callback){
213
				var callbackKey = action+callbackId;
214
				if (callback) {
215
		            callbackDefine[callbackKey] = {callback:callback};
216
		        }
217
			},execCallback:function(callbackKey, data, isEncode){
218
				globalErrorKey = callbackKey;
219
				var callbackItem = callbackDefine[callbackKey];
220
				if (callbackItem) {
221
					data = data=="null"?null:data;
222
					if(data){
223
		        		if(isEncode){
224
		        			data = decodeURIComponent(data);
225
		        		}
226
		        	}
227
		            if (callbackItem.callback) {   
228
		                if(typeof callbackItem.callback==="function"){
229
		                	var func = callbackItem.callback;
230
		                	func(data);
231
	                	}else{
232
	                		_eval(callbackItem.callback+"('"+data+"','"+callbackKey+"')");
233
	                	}
234
		            }
235
			        if (callbackItem) {
236
			            delete callbackDefine[callbackKey];
237
			        }
238
			    }
239
				globalErrorKey = null;
240
			}
241
		};
242
	})();
243
	
244
	WadeMobile.event = (function(){
245
		if(WadeMobile.isApp()){
246
			var e = document.createEvent('Events');
247
			return {
248
				back:function(){
249
					e.initEvent('backKeyDown');
250
					document.dispatchEvent(e);
251
				},menu:function(){
252
					e.initEvent('menuKeyDown');
253
				    document.dispatchEvent(e);
254
				},search:function(){
255
					e.initEvent('searchKeyDown');
256
				    document.dispatchEvent(e);
257
				}
258
			};
259
		}
260
	})();
261
	
262
	/************公共方法**************/
263
	/**
264
	 * @param {String}  errorMessage   错误信息
265
	 * @param {String}  scriptURI      错误文件
266
	 * @param {Long}    lineNumber     错误行号
267
	 */
268
	window.onerror = function(errorMessage, scriptURI, lineNumber) {
269
		var msgArray = new Array();
270
		if (errorMessage)
271
			msgArray.push("错误信息:" + errorMessage);
272
		if (lineNumber)
273
			msgArray.push("错误行号:" + lineNumber);
274
		if (globalErrorKey)
275
			msgArray.push("错误关键字:" + globalErrorKey);
276
		if (scriptURI)
277
			msgArray.push("错误文件:" + scriptURI);
278
		var msg = msgArray.join("\t\n");
279
		console.log(msg);
280
		alert(msg);
281
	};
282
	
283
	//动态执行js方法
284
	function _eval(code,action){
285
		if(WadeMobile.debug){
286
			alert(code);
287
		}
288
		var func = eval(code);
289
		if(typeof func==="function"){
290
			func();
291
		}
292
	}
293
	//格式转换方法
294
	function stringify(args) {
295
	    if (typeof JSON == "undefined") {
296
	        var s = "[";
297
	        for (var i=0; i<args.length; i++) {
298
	            if (i > 0) {
299
	                s = s + ",";
300
	            }
301
	            var type = typeof args[i];
302
	            if ((type == "number") || (type == "boolean")) {
303
	                s = s + args[i];
304
	            }
305
	            else if (args[i] instanceof Array) {
306
	            	s = s + "[" + args[i] + "]";
307
	            }
308
	            else if (args[i] instanceof Object) {
309
	            	var start = true;
310
	            	s = s + '{';
311
	            	for (var name in args[i]) {
312
	            		if (args[i][name] != null) {
313
		            		if (!start) {
314
		            			s = s + ',';
315
		            		}
316
		            		s = s + '"' + name + '":';
317
		            		var nameType = typeof args[i][name];
318
		            		if ((nameType == "number") || (nameType == "boolean")) {
319
		            			s = s + args[i][name];
320
		            		}
321
		            		else if ((typeof args[i][name]) == 'function') {
322
			           			// don't copy the functions
323
		            			s = s + '""'; 
324
		            		}
325
		            		else if (args[i][name] instanceof Object) {
326
		            			s = s + stringify(args[i][name]);
327
		            		}
328
		            		else {
329
		                        s = s + '"' + args[i][name] + '"';            			
330
		            		}
331
		                    start=false;
332
		                 }
333
	            	} 
334
	            	s = s + '}';
335
	            }else {
336
	                var a = args[i].replace(/\\/g, '\\\\');
337
	                a = a.replace(/"/g, '\\"');
338
	                s = s + '"' + a + '"';
339
	            }
340
	        }
341
	        s = s + "]";
342
	        return s;
343
	    }else {
344
	        return JSON.stringify(args);
345
	    }
346
	};
347
	
348
	return WadeMobile;
349
})();

BIN
wade-mobile-common/libs/wade-mobile-com.jar


BIN
wade-mobile-common/libs/wade-mobile-data.jar


BIN
wade-mobile-common/libs/wade-mobile-func.jar


BIN
wade-mobile-common/libs/wade-mobile-im.jar


BIN
wade-mobile-common/libs/wade-mobile-ui.jar


BIN
wade-mobile-common/libs/wade-mobile.jar


@自优化@laijj@RN参数调整 · bc265b7475 - Nuosi Git Service
Browse Source

@自优化@laijj@RN参数调整

赖骏劼 3 years ago
parent
commit
bc265b7475
1 changed files with 0 additions and 11 deletions
  1. 0 11
      show-server/src/main/java/com/ai/ipu/show/bean/BundleBean.java

+ 0 - 11
show-server/src/main/java/com/ai/ipu/show/bean/BundleBean.java

@ -163,17 +163,6 @@ public class BundleBean extends IpuAppBean{
163 163
    }
164 164
165 165
    /**
166
     * 读取后台的所有bundle
167
     * @return
168
     */
169
    private List<String> queryBundles() throws Exception {
170
        List<String> bundles = new ArrayList<String>();
171
        //TODO 取值逻辑实现
172
        BundleDao bundleDao = new BundleDao(Constant.BundleConnName.RN_BUNDLE);
173
        return bundles;
174
    }
175
176
    /**
177 166
     * 读取获取对应的更新包
178 167
     * @param appBunleV
179 168
     * @param lastestBundleV