Ver Código Fonte

[提交内容]:display-server nfc 插件

wangyj18 9 anos atrás
pai
commit
a0f588fd07

+ 1 - 5
display-client/AndroidManifest.xml

@ -2,7 +2,7 @@
2 2
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3 3
    package="com.ai.mobile.display"
4 4
    android:versionCode="1"
5
    android:versionName="1.3" >
5
    android:versionName="1.0" >
6 6

7 7
    <uses-sdk
8 8
        android:minSdkVersion="8"
@ -105,10 +105,6 @@
105 105
            android:name="com.wade.mobile.common.audio.activity.AudioPlayerActivity"
106 106
            android:theme="@style/AudioDialogTheme" >
107 107
        </activity>
108
        <activity
109
            android:name="com.wade.mobile.common.simplemedia.activity.SARecorder"
110
            android:theme="@style/AudioDialogTheme" >
111
        </activity>
112 108
        <!-- 标记地图 -->
113 109
        <activity android:name="com.wade.mobile.common.map.activity.MarkMapActivity">
114 110
        </activity>

+ 7 - 0
display-server/web/biz/js/plugin/NFC.js

@ -0,0 +1,7 @@
1
require(["domReady!","wadeMobile","util"], function(doc,WadeMobile) {
2
	$("#read").tap(function() {
3
		WadeMobile.readByNfc(function(result) {
4
			alert(result)
5
		});
6
	});
7
});

+ 6 - 2
display-server/web/biz/js/plugin/database.js

@ -142,11 +142,13 @@ require(["domReady!","mobile", "util"], function(doc,Mobile) {
142 142
	$("#update").tap(function() {
143 143
		var param = new Wade.DataMap();
144 144
		param.put("STU_NAME", "Dave");
145

146
		var condSQL = "STU_NO = :VSTU_NO";
145 147
		
146 148
		var conds = new Wade.DataMap();
147 149
		conds.put("STU_NO", "2015004");
148 150
		
149
		Mobile.update(dbName, tableName, param, conds, function(result){
151
		Mobile.update(dbName, tableName, param, condSQL, conds, function(result){
150 152
			alert(result);
151 153
		});
152 154
	});
@ -165,10 +167,12 @@ require(["domReady!","mobile", "util"], function(doc,Mobile) {
165 167
	
166 168
	//删除数据
167 169
	$("#delete").tap(function() {
170
		var condSQL = "STU_NO = :VSTU_NO";
171
		
168 172
		var param = new Wade.DataMap();
169 173
		param.put("STU_NO", "2015004");
170 174
		
171
		Mobile.delete(dbName, tableName, param, function(result){
175
		Mobile.delete(dbName, tableName, condSQL, param, function(result){
172 176
			alert(result);
173 177
		});
174 178
	});

+ 6 - 6
display-server/web/res/js/mobile/expand-mobile.js

@ -205,13 +205,13 @@ define(["require"],function(require) {
205 205
				}
206 206
				storageCallback("insert",callback);
207 207
				execute("insert",[dbName,table,datas.toString()],err);
208
			},delete:function(dbName,table,datas,callback,err){
209
				if(datas==undefined){
210
					datas = new Wade.DataMap();
208
			},delete:function(dbName,table,condSQL,conds,callback,err){
209
				if(conds==undefined){
210
					conds = new Wade.DataMap();
211 211
				}
212 212
				storageCallback("delete",callback);
213
				execute("delete",[dbName,table,datas.toString()],err);
214
			},update:function(dbName,table,datas,conds,callback,err){
213
				execute("delete",[dbName,table,condSQL,conds.toString()],err);
214
			},update:function(dbName,table,datas,condSQL,conds,callback,err){
215 215
				if(datas==undefined){
216 216
					datas = new Wade.DataMap();
217 217
				}
@ -219,7 +219,7 @@ define(["require"],function(require) {
219 219
					conds = new Wade.DataMap();
220 220
				}
221 221
				storageCallback("update",callback);
222
				execute("update",[dbName,table,datas.toString(),conds.toString()],err);
222
				execute("update",[dbName,table,datas.toString(),condSQL,conds.toString()],err);
223 223
			},select:function(dbName,table,columns,conds,callback,err){
224 224
				if(columns==undefined){
225 225
					columns = new Array();

+ 17 - 0
display-server/web/res/js/mobile/wade-mobile.js

@ -145,6 +145,10 @@ define(["jcl","base64","jcl","res/js/mobile/expand-mobile.js","biz/js/common/biz
145 145
            //alert("准备调用"+action+" 参数:"+args);
146 146
            console.log("action:"+action+" param:"+args);
147 147
        }
148
        //数据库特殊处理
149
        if("execSQL" == action || "insert" == action || "delete" == action || "update" == action || action.match("select")){
150
        	args = dealSpecSymbol(action, args);
151
        }
148 152
        var WADE_SCHEME = "wade://";
149 153
        var url = WADE_SCHEME+action+"?param="+args+"&callback="+callbackKey;
150 154
        //一个动作请求客户端的最大数量,超过会造成请求覆盖
@ -354,6 +358,19 @@ define(["jcl","base64","jcl","res/js/mobile/expand-mobile.js","biz/js/common/biz
354 358
	        return JSON.stringify(args);
355 359
	    }
356 360
	};
361
	/**
362
	 * 数据库操作特殊符号处理
363
	 */
364
	function dealSpecSymbol(action, args){
365
		args = args.split(',');//字符串转换为数组对象
366
		var index = (action.match("select") || action == "update") ? 3 : 2;
367
		var condStr = args[index];
368
		condStr = condStr.replace(/=/g, ":3D").replace(/\?/g ,":3F").replace(/,/g, ":9A");
369
		
370
		args[index] = condStr;
371
		
372
		return args;
373
	};
357 374
	
358 375
	var ExpandMobile = require("res/js/mobile/expand-mobile.js");
359 376
	var BizMobile = require("biz/js/common/biz-mobile.js");

+ 39 - 0
display-server/web/template/webapp/plugin/NFC.html

@ -0,0 +1,39 @@
1
<!DOCTYPE HTML>
2
<html class="s_bs">
3
<head>
4
	<meta charset="utf-8" />
5
	<meta name="viewport" content="target-densitydpi=device-dpi, width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1" />
6
	<title>NFC</title>
7
	{%>template/common/Head.html%}
8
	<script type="text/javascript" src="biz/js/plugin/NFC.js"></script>
9
	<link href="biz/css/project.css" rel="stylesheet" type="text/css" />
10
</head>
11
<body>
12

13
<div class="c_navBar">
14
	<div class="left">
15
		<div class="back">
16
			<span class="e_ico-back"></span>
17
			<span class="text">NFC</span>
18
		</div>
19
	</div>
20
</div>
21

22
<div class="m_content m_content-nofooter" id="content" >
23
	<div class="c_title">读取NFC信息</div>
24
	<div class="c_list">
25
		<ul>
26
			<li>
27
				<div class="content">
28
					<div class="main">
29
						<div class="title">NFC</div>
30
						<div class="info"></div>
31
					</div>
32
					<div class="fn fn-2" id="read">读取</div>
33
				</div>
34
			</li>
35
		</ul>
36
	</div>
37
</div>
38
</body>
39
</html>

+ 1 - 5
wade-mobile-func/src/com/wade/mobile/func/MobileNetWork.java

@ -201,9 +201,7 @@ public class MobileNetWork extends Plugin {
201 201

202 202
	private String requestBizData(String dataAction, IData param) throws Exception {
203 203
		Map<String,String> postData = transPostData(dataAction, param);
204
		String encode = MobileConfig.getInstance().getEncode();
205
		String dataUrl = HttpTool.toQueryString(postData);
206
		dataUrl = HttpTool.urlEncode(dataUrl, encode);
204
		String dataUrl = HttpTool.toQueryStringWithEncode(postData);
207 205
		String result = HttpTool.httpRequest(MobileConfig.getInstance().getRequestUrl(),
208 206
				dataUrl, Constant.HTTP_POST);
209 207
		if (ServerDataConfig.isEncrypt(dataAction)) {
@ -220,12 +218,10 @@ public class MobileNetWork extends Plugin {
220 218
			MobileSecurity.init(context);
221 219
			/* 参数加密处理 */
222 220
			String key = MobileSecurity.getDesKey();
223
			key = key.replace("+", "-");//将+号全部转换成-号
224 221
			postData.put(Constant.Server.KEY, key);
225 222
			
226 223
			if(dataParam!=null){
227 224
				String encryptData = MobileSecurity.requestEncrypt(dataParam.toString());
228
				encryptData = encryptData.replace("+", "-");
229 225
				postData.put(Constant.Server.DATA, encryptData);
230 226
			}
231 227
		} else {

BIN
wade-mobile-library/common/wade-mobile-server.jar