基于Android的路況信息交互系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種基于Android的路況信息交互系統(tǒng)。社會(huì)高速發(fā)展,駕車的安全和擁堵問題也日益突出。本發(fā)明組成包括:前臺(tái)客戶端,所述的前臺(tái)客戶端負(fù)責(zé)與用戶的交互,將用戶的請(qǐng)求發(fā)送給后臺(tái)服務(wù)器;所述的后臺(tái)服務(wù)器端負(fù)責(zé)接收客戶的請(qǐng)求并對(duì)請(qǐng)求做出響應(yīng),發(fā)送至所述的前臺(tái)客戶端,采用Tomcat;數(shù)據(jù)庫作為數(shù)據(jù)存儲(chǔ)的介質(zhì),只能被服務(wù)器訪問,采用Mysal。本發(fā)明用于路況信息交互系統(tǒng)。
【專利說明】基于Android的路況信息交互系統(tǒng)
[0001]【技術(shù)領(lǐng)域】:
本發(fā)明涉及一種基于Android的路況信息交互系統(tǒng)。
[0002]【背景技術(shù)】:
社會(huì)高速發(fā)展,駕車的安全和擁堵問題也日益突出??焖俚默F(xiàn)代生活使得人們?cè)絹碓揭蕾囈苿?dòng)網(wǎng)絡(luò)和手機(jī),為使得人們更加安全快捷的了解所要行經(jīng)路徑的擁堵狀況所以設(shè)計(jì)本系統(tǒng)。本系統(tǒng)手機(jī)客戶端采用目前應(yīng)用最為廣泛的Android操作系統(tǒng),手機(jī)用戶可以通過語音功能進(jìn)行簡單的操作就可以從服務(wù)器端獲取所需要的路況信息。
[0003]現(xiàn)有的路況信息查詢都是綁定在導(dǎo)航系統(tǒng)中無法保證信息的詳盡準(zhǔn)確,更加缺少自主語音獲取的方法。
[0004]
【發(fā)明內(nèi)容】
:
本發(fā)明的目的在于提供一種基于Android的路況信息交互系統(tǒng)。
[0005]本發(fā)明的目的是這樣實(shí)現(xiàn)的:
一種基于Android的路況信息交互系統(tǒng),其組成包括:前臺(tái)客戶端,所述的前臺(tái)客戶端負(fù)責(zé)與用戶的交互,將用戶的請(qǐng)求發(fā)送給后臺(tái)服務(wù)器;所述的后臺(tái)服務(wù)器端負(fù)責(zé)接收客戶的請(qǐng)求并對(duì)請(qǐng)求做出響應(yīng),發(fā)送至所述的前臺(tái)客戶端,采用Tomcat ;數(shù)據(jù)庫作為數(shù)據(jù)存儲(chǔ)的介質(zhì),只能被服務(wù)器訪問,采用Mysal。
[0006]所述的基于Android的路況信息交互系統(tǒng),遠(yuǎn)程終端應(yīng)用是基于C/S服務(wù)架構(gòu)開發(fā),用于通過語音信號(hào)識(shí)別用戶指令,從而完成指定工作,所述的前臺(tái)客戶端即為Android手機(jī),所述的后臺(tái)服務(wù)器為Google云服務(wù)端;所述的服務(wù)端具有街道名稱識(shí)別模塊,所述的街道名稱識(shí)別模塊通過解析存儲(chǔ)的街道名稱與Google Voice語音搜索數(shù)據(jù)進(jìn)行匹配,Google Voice模塊通過與Google API的整合,運(yùn)用多線程技術(shù),匹配到街道名稱,并對(duì)匹配結(jié)果進(jìn)行相應(yīng),若匹配成功,則輸入匹配內(nèi)容,若匹配不成功,則返回前一步驟進(jìn)行匹配或退出進(jìn)行按鍵輸入。
[0007]所述的基于Android的路況信息交互系統(tǒng),所述的語音識(shí)別模塊調(diào)用Google語音搜索API后,用戶說出想要查找信息的街道名稱,Google云服務(wù)端返回語音識(shí)別的數(shù)據(jù)到客戶端,將這些數(shù)據(jù)與用戶手機(jī)存儲(chǔ)的街道名稱的數(shù)據(jù)進(jìn)行匹對(duì),匹對(duì)成功,則輸入相應(yīng)的名稱。
[0008]所述的基于Android的路況信息交互系統(tǒng),整個(gè)通信系統(tǒng)的通信協(xié)議由兩部分組成,分別設(shè)計(jì)底層HTTP網(wǎng)路協(xié)議和上層的自定義通信協(xié)議;其中,通信協(xié)議定義了服務(wù)器與客戶端的交互方式,客戶端按照請(qǐng)求協(xié)議進(jìn)行請(qǐng)求報(bào)文的組織,服務(wù)器端則按照響應(yīng)協(xié)議進(jìn)行相應(yīng)報(bào)文的組織;所述的HTTP底層網(wǎng)絡(luò)協(xié)議:客戶端采用HTTP協(xié)議與應(yīng)用服務(wù)器進(jìn)行通信,把私有通信協(xié)議封裝在HTTP報(bào)文的數(shù)據(jù)段之中;
(1)客戶端發(fā)出的HTTP請(qǐng)求報(bào)文格式
POST / OSSServer HTTP /1.1-----CUS 通過 POST 方法提交數(shù)據(jù);
Connection: close-----連接斷開:close ;
User — agent: CA Client /1.0-----客戶端種類;Accept: text / plain-----接受文件的格式;
Accept — language: en-----接受語言;
Content — Length: 200 -----數(shù)據(jù)段長度;
Content — Type: text / plain-----數(shù)據(jù)段的格式;
-----這有一個(gè)換行;....................數(shù)據(jù)段(封裝私有協(xié)議通信數(shù)據(jù));
(2) Server返回的HTTP回應(yīng)報(bào)文格式
HTTP /1.1 200 OK-----狀態(tài)行;
Connection: close-----連接斷開:close ;
Date: Thu, 13 Oct 2006 05:33:47 GMT-----時(shí)間;
Server: CA Server / 2.2-----月艮務(wù)器;
Last - Modified: Thu, 13 Oct 2006 02:32:47 GMT-----上次修改時(shí)間;
Content — Length: 200 -----數(shù)據(jù)段長度;
Content — Type: text /plain-----數(shù)據(jù)段的格式;
-----這有一 個(gè)換行.......................數(shù)據(jù)段。
[0009]所述的基于Android的路況信息交互系統(tǒng),所述的通信協(xié)議形式:通信協(xié)議的通信數(shù)據(jù)格式使用JS0N,JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,這種格式利于閱讀和編寫,同時(shí)也易于機(jī)器解析和生成;協(xié)議以數(shù)據(jù)類的形式定義,以下是請(qǐng)求類和響應(yīng)類的定義。
[0010](I)請(qǐng)求類的定義
/林
◎Description:客戶端請(qǐng)求數(shù)據(jù)模型 */
public class RequestData {
private String protocol; // 協(xié)議版本
private int command; //命令I(lǐng)d,用來標(biāo)識(shí)不同的請(qǐng)求
private String userid; // 用戶 Id—圖書證號(hào)
private String clientVersion; // 客戶端版本
private String clientModel; // 客戶端機(jī)型
//擴(kuò)展字段
private Map < String, String > extra = new HashMap <
String, String > ();......}
說明:clientVersion字段的內(nèi)容形如“vl.0”,表示準(zhǔn)備發(fā)布的正式版本號(hào);
(2)響應(yīng)類的定義
/林
*@ Description:服務(wù)器響應(yīng)數(shù)據(jù)模型 */
public class ResponseData {private String protocol; / / 協(xié)議版本 private int command; // 命令 Id
private boolean hasUpdate; // 是否有更新,false 表不,true 表不有更新 private String message; // 提不信息
private int errorCode; / /錯(cuò)誤代碼,詳細(xì)定義參考協(xié)議定義
//擴(kuò)展字段
private Map < String, String > extra = new HashMap < String, String >
0;
以上兩個(gè)類定義了請(qǐng)求和響應(yīng)的公共字段,而擴(kuò)展字段則根據(jù)請(qǐng)求的不同,詳見不同事務(wù)的相應(yīng)定義;例如用戶登陸請(qǐng)求command值為I;請(qǐng)求擴(kuò)展字段中包含userPassword,表示用戶登陸的密碼;相應(yīng)的響應(yīng)擴(kuò)展字段包含userlnfo,表示用戶基本信息,同時(shí)也是JSON字符串,對(duì)應(yīng)用戶信息的數(shù)據(jù)類定義。
[0011]有益效果:
1.首先,客戶端不需要進(jìn)行大量的計(jì)算和數(shù)據(jù)存儲(chǔ),降低了客戶端的實(shí)現(xiàn)難度和對(duì)硬件的要求;其次,采取統(tǒng)一的通信協(xié)議和文件格式,可以實(shí)現(xiàn)與不同平臺(tái)的客戶端對(duì)接?’最后,服務(wù)器端直接與數(shù)據(jù)庫連接,保證了數(shù)據(jù)的安全性和一致性。
[0012]【專利附圖】
【附圖說明】:
附圖1是本發(fā)明的系統(tǒng)框架圖。
[0013]附圖2是Android聲控輸入系統(tǒng)架構(gòu)層次圖。
[0014]附圖3是語音識(shí)別模塊識(shí)別流程圖。
[0015]附圖4是通信流程圖。
[0016]【具體實(shí)施方式】:
實(shí)施例1: 一種基于Android的路況信息交互系統(tǒng),其組成包括:前臺(tái)客戶端,所述的前臺(tái)客戶端負(fù)責(zé)與用戶的交互,將用戶的請(qǐng)求發(fā)送給后臺(tái)服務(wù)器;所述的后臺(tái)服務(wù)器端負(fù)責(zé)接收客戶的請(qǐng)求并對(duì)請(qǐng)求做出響應(yīng),發(fā)送至所述的前臺(tái)客戶端,采用Tomcat ;數(shù)據(jù)庫作為數(shù)據(jù)存儲(chǔ)的介質(zhì),只能被服務(wù)器訪問,采用Mysal。
[0017]實(shí)施例2:
根據(jù)實(shí)施例1所述的基于Android的路況信息交互系統(tǒng),遠(yuǎn)程終端應(yīng)用是基于C/S服務(wù)架構(gòu)開發(fā),主要應(yīng)用于通過語音信號(hào)識(shí)別用戶指令,從而完成指定工作,所述的前臺(tái)客戶端即為Android手機(jī),所述的后臺(tái)服務(wù)器為Google云服務(wù)端;本終端系統(tǒng)功能主要有一個(gè)子模塊:街道名稱識(shí)別模塊,所述的街道名稱識(shí)別模塊主要通過解析存儲(chǔ)的街道名稱與Google Voice語音搜索數(shù)據(jù)進(jìn)行匹配,Google Voice模塊通過與Google API的整合,運(yùn)用多線程技術(shù),匹配到街道名稱,并對(duì)匹配結(jié)果進(jìn)行相應(yīng),若匹配成功,則輸入匹配內(nèi)容,若匹配不成功,則返回前一步驟進(jìn)行匹配或退出進(jìn)行按鍵輸入。
[0018]實(shí)施例3:
根據(jù)實(shí)施例1或2所述的基于Android的路況信息交互系統(tǒng),語音識(shí)別模塊:語音識(shí)別的功能實(shí)現(xiàn)原理是:調(diào)用Google語音搜索API后,用戶說出想要查找信息的街道名稱,Google云服務(wù)端返回語音識(shí)別的數(shù)據(jù)到客戶端,將這些數(shù)據(jù)與用戶手機(jī)存儲(chǔ)的街道名稱的數(shù)據(jù)進(jìn)行匹對(duì),匹對(duì)成功,則輸入相應(yīng)的名稱。
[0019]實(shí)施例4:
根據(jù)實(shí)施例1或2或3所述的基于Android的路況信息交互系統(tǒng),整個(gè)通信系統(tǒng)的通信協(xié)議由兩部分組成,分別設(shè)計(jì)底層HTTP網(wǎng)路協(xié)議和上層的自定義通信協(xié)議;其中,通信協(xié)議定義了服務(wù)器與客戶端的交互方式,客戶端按照請(qǐng)求協(xié)議進(jìn)行請(qǐng)求報(bào)文的組織,服務(wù)器端則按照響應(yīng)協(xié)議進(jìn)行相應(yīng)報(bào)文的組織;所述的HTTP底層網(wǎng)絡(luò)協(xié)議:客戶端采用HTTP協(xié)議與應(yīng)用服務(wù)器進(jìn)行通信,把私有通信協(xié)議封裝在HTTP報(bào)文的數(shù)據(jù)段之中,
(1)客戶端發(fā)出的HTTP請(qǐng)求報(bào)文格式
POST / OSSServer HTTP /1.1-----CUS 通過 POST 方法提交數(shù)據(jù)
Connection: close-----連接斷開:close
User — agent: CA Client /1.0-----客戶端種類
Accept: text / plain-----接受文件的格式
Accept — language: en-----接受語言
Content 一 Length: 200 -----數(shù)據(jù)段長度 Content — Type: text / plain-----數(shù)據(jù)段的格式
-----這有一個(gè)換行....................數(shù)據(jù)段(封裝私有協(xié)議通信數(shù)據(jù))
(2)Server返回的HTTP回應(yīng)報(bào)文格式
HTTP /1.1 200 OK-----狀態(tài)行
Connection: close-----連接斷開:close
Date: Thu, 13 Oct 2006 05:33:47 GMT-----時(shí)間
Server: CA Server / 2.2-----月艮務(wù)器
Last - Modified: Thu, 13 Oct 2006 02:32:47 GMT-----上次修改時(shí)間
Content 一 Length: 200 -----數(shù)據(jù)段長度
Content — Type: text /plain-----數(shù)據(jù)段的格式
-----這有一個(gè)換行.......................數(shù)據(jù)段。
[0020]實(shí)施例5:
根據(jù)實(shí)施例1或2或3或4所述的基于Android的路況信息交互系統(tǒng),通信協(xié)議形式:通信協(xié)議的通信數(shù)據(jù)格式使用JS0N,JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,這種格式利于閱讀和編寫,同時(shí)也易于機(jī)器解析和生成;協(xié)議以數(shù)據(jù)類的形式定義以下是請(qǐng)求類和響應(yīng)類的定義。
[0021](I)請(qǐng)求類的定義
/林
◎Description:客戶端請(qǐng)求數(shù)據(jù)模型 */
public class RequestData {
private String protocol; // 協(xié)議版本
【權(quán)利要求】
1.一種基于Android的路況信息交互系統(tǒng),其組成包括:前臺(tái)客戶端,其特征是:所述的前臺(tái)客戶端負(fù)責(zé)與用戶的交互,將用戶的請(qǐng)求發(fā)送給后臺(tái)服務(wù)器;所述的后臺(tái)服務(wù)器端負(fù)責(zé)接收客戶的請(qǐng)求并對(duì)請(qǐng)求做出響應(yīng),發(fā)送至所述的前臺(tái)客戶端,采用Tomcat ;數(shù)據(jù)庫作為數(shù)據(jù)存儲(chǔ)的介質(zhì),只能被服務(wù)器訪問,采用Mysal。
2.根據(jù)權(quán)利要求1所述的基于Android的路況信息交互系統(tǒng),其特征是:遠(yuǎn)程終端應(yīng)用是基于C/S服務(wù)架構(gòu)開發(fā),用于通過語音信號(hào)識(shí)別用戶指令,從而完成指定工作,所述的前臺(tái)客戶端即為Android手機(jī),所述的后臺(tái)服務(wù)器為Google云服務(wù)端;所述的服務(wù)端具有街道名稱識(shí)別模塊,所述的街道名稱識(shí)別模塊通過解析存儲(chǔ)的街道名稱與Google Voice語音搜索數(shù)據(jù)進(jìn)行匹配,Google Voice模塊通過與Google API的整合,運(yùn)用多線程技術(shù),匹配到街道名稱,并對(duì)匹配結(jié)果進(jìn)行相應(yīng),若匹配成功,則輸入匹配內(nèi)容,若匹配不成功,則返回前一步驟進(jìn)行匹配或退出進(jìn)行按鍵輸入。
3.根據(jù)權(quán)利要求1或2所述的基于Android的路況信息交互系統(tǒng),其特征是:所述的語音識(shí)別模塊調(diào)用Google語音搜索API后,用戶說出想要查找信息的街道名稱,Google云服務(wù)端返回語音識(shí)別的數(shù)據(jù)到客戶端,將這些數(shù)據(jù)與用戶手機(jī)存儲(chǔ)的街道名稱的數(shù)據(jù)進(jìn)行匹對(duì),匹對(duì)成功,則輸入相應(yīng)的名稱。
4.根據(jù)權(quán)利要求1或2或3所述的基于Android的路況信息交互系統(tǒng),其特征是:整個(gè)通信系統(tǒng)的通信協(xié)議由兩部分組成,分別設(shè)計(jì)底層HTTP網(wǎng)路協(xié)議和上層的自定義通信協(xié)議;其中,通信協(xié)議定義了服務(wù)器與客戶端的交互方式,客戶端按照請(qǐng)求協(xié)議進(jìn)行請(qǐng)求報(bào)文的組織,服務(wù)器端則按照響應(yīng)協(xié)議進(jìn)行相應(yīng)報(bào)文的組織;所述的HTTP底層網(wǎng)絡(luò)協(xié)議:客戶端采用HTTP協(xié)議與應(yīng)用服務(wù)器進(jìn)行通信,把私有通信協(xié)議封裝在HTTP報(bào)文的數(shù)據(jù)段之中; (1)客戶端發(fā)出的HTTP請(qǐng)求報(bào)文格式 POST / OSSServer HTTP /1.1-----CUS 通過 POST 方法提交數(shù)據(jù); Connection: close-----連接斷開:close ; User — agent: CA Client /1.0-----客戶端種類; Accept: text / plain-----接受文件的格式; Accept — language: en-----接受語言; Content — Length: 200 -----數(shù)據(jù)段長度; Content — Type: text / plain-----數(shù)據(jù)段的格式; -----這有一個(gè)換行;....................數(shù)據(jù)段(封裝私有協(xié)議通信數(shù)據(jù)); (2)Server返回的HTTP回應(yīng)報(bào)文格式 HTTP /1.1 200 OK-----狀態(tài)行; Connection: close-----連接斷開:close ; Date: Thu, 13 Oct 2006 05:33:47 GMT-----時(shí)間; Server: CA Server / 2.2-----月艮務(wù)器;
Last - Modified: Thu, 13 Oct 2006 02:32:47 GMT-----上次修改時(shí)間; Content — Length: 200 -----數(shù)據(jù)段長度; Content — Type: text /plain-----數(shù)據(jù)段的格式;-----這有一個(gè)換行.......................數(shù)據(jù)段。
5.根據(jù)權(quán)利要求1或2或3或4所述的基于Android的路況信息交互系統(tǒng),其特征是:所述的通信協(xié)議形式:通信協(xié)議的通信數(shù)據(jù)格式使用JSON,JSON是一種輕量級(jí)的數(shù)據(jù)交換格式,這種格式利于閱讀和編寫,同時(shí)也易于機(jī)器解析和生成;協(xié)議以數(shù)據(jù)類的形式定義,以下是請(qǐng)求類和響應(yīng)類的定義, (1)請(qǐng)求類的定義 /林 ◎Description:客戶端請(qǐng)求數(shù)據(jù)模型 */
public class RequestData { private String protocol; //協(xié)議版本 private int command; //命令I(lǐng)d,用來標(biāo)識(shí)不同的請(qǐng)求 private String userid; // 用戶 Id—圖書證號(hào) private String clientVersion; // 客戶端版本 private String clientModel; // 客戶端機(jī)型 //擴(kuò)展字段 private Map < String, String > extra = new HashMap <
String, String > ();......} 說明:clientVersion字段的內(nèi)容形如“vl.0”,表示準(zhǔn)備發(fā)布的正式版本號(hào); (2)響應(yīng)類的定義 /林 *@ Description:服務(wù)器響應(yīng)數(shù)據(jù)模型 */
public class ResponseData {
private String protocol; / / 協(xié)議版本
private int command; // 命令 Id private boolean hasUpdate; // 是否有更新,false 表不,true 表不有更新 private String message; // 提不信息 private int errorCode; / /錯(cuò)誤代碼,詳細(xì)定義參考協(xié)議定義 //擴(kuò)展字段
private Map < String, String > extra = new HashMap < String, String >(); 以上兩個(gè)類定義了請(qǐng)求和響應(yīng)的公共字段,而擴(kuò)展字段則根據(jù)請(qǐng)求的不同,詳見不同事務(wù)的相應(yīng)定義;例如用戶登陸請(qǐng)求command值為I;請(qǐng)求擴(kuò)展字段中包含userPassword,表示用戶登陸的密碼;相應(yīng)的響應(yīng)擴(kuò)展字段包含userlnfo,表示用戶基本信息,同時(shí)也是JSON字符串,對(duì)應(yīng)用戶信息的數(shù)據(jù)類定義。
【文檔編號(hào)】H04M1/725GK103812878SQ201410096897
【公開日】2014年5月21日 申請(qǐng)日期:2014年3月17日 優(yōu)先權(quán)日:2014年3月17日
【發(fā)明者】王英立, 張小清, 徐志強(qiáng), 王同 申請(qǐng)人:哈爾濱理工大學(xué)