999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Android平臺的城市公交查詢系統的設計與實現

2013-01-01 00:00:00王海峰
計算機時代 2013年4期

摘 要: 為了提高城市公交信息化水平,方便智能手機用戶查詢城市公交信息,在深入進行需求分析的基礎上,基于Android 開發平臺,給出了以南通城市為例的城市公交查詢系統的設計與實現過程,實現了公交線路查詢、公交站點查詢和公交換乘查詢等功能。該系統使用Android 軟件開發工具包和SQLite數據庫進行開發,應用程序代碼實現基于Java語言。該系統已經在Android智能手機上測試通過。

關鍵詞: Android平臺; 城市公交查詢; SQLite數據庫; 公交換乘查詢

中圖分類號:TP315 文獻標志碼:A 文章編號:1006-8228(2013)04-26-03

Design and implementation of city bus search system based on android platform

Wang Haifeng

(Nantong Vocational College School of Electronic Information Engineering, Nantong, Jiangsu 226007, China)

Abstract: In order to improve the informatization level of city public transportation, and to make the search of bus information for the users convenient with intelligence mobile phone, a project of bus information search system is designed and implemented in Nantong on the Android platform, after a deep requirement analysis This application, using Android SDK and SQLite database, is developed and based on Java language. The system is tested and works well on the mobile phone of Android.

Key words: android platform; city bus search; SQLite database; the query of bus transfer

0 引言

Android是Google公司公布的基于Linux內核的手機操作系統。隨著Google及其OHA(Open Handset Alliance——開放手機聯盟)其他成員的大力推進,Android平臺的智能手機市場占有率與日俱增,因此基于Android平臺的軟件開發具有廣闊的應用前景。為了能讓城市公交查詢系統準確、快速地為市民和外來游客提供公交信息查詢服務[1],本文提出了基于Android平臺的城市公交查詢系統的實現方法,并對系統的開發原理、功能特點和設計方法進行重點分析。

1 系統需求分析

1.1 功能需求

⑴ 站點查詢:提供城市(以南通為例)公交站點信息查詢功能,讓用戶了解經過該站點的線路信息。

⑵ 線路查詢:在用戶輸入線路名稱后,為用戶提供該條線路所經站點信息和該線路的基本信息,如頭班車時間、末班車時間和票價等[2]。

⑶ 換乘查詢:根據用戶輸入的起始站和終點站為用戶提供最佳換乘方案:直達線路、一次換乘等。

1.2 性能需求

首先,從系統的易用性來看,系統直接面對Android手機用戶使用的,這就要求系統提供良好的用戶界面。系統通過熟悉的術語和中文信息為用戶提供易用的人機交互界面,從而縮短用戶對系統熟悉的過程。

其次,從系統的信息處理的準確性和及時性來看,信息處理的準確性和及時性是城市公交查詢系統的必要性能[3]。在系統設計和開發過程中,要充分考慮手機當前可能承受的工作量,從而使得系統信息處理能力和響應時間能夠滿足用戶的需求。

此外,限于手機硬件特點,還應考慮系統安裝包盡可能小,系統運行時占用手機內存盡可能少,這就要求系統在實現時算法優化、程序簡練。

2 系統規劃設計

2.1 主要功能模塊

在對城市公交查詢的調查研究和詳細需求分析的基礎上,城市公交查詢系統分為三大模塊,系統結構圖如圖1所示。

⑴ 線路查詢功能

用戶進行“線路查詢”時,系統首先判斷線路輸入是否為空或不合法,如果是則彈出錯誤提示,否則進行線路查詢,在后臺數據庫中查找所查詢線路的所有站點信息,包括該路線公交的名稱、發車時間、結束時間以及票價等。如果存在查詢結果,則將其結果顯示,否則提示線路不存在。選擇該線路所列的站點信息列表中的站點時,則能顯示該站點詳細信息。

⑵ 站點查詢功能

用戶進行“站點查詢”時,系統首先判斷站點輸入是否為空或不合法,如果是則彈出錯誤提示,否則進行站點查詢,在后臺數據庫中查找經過該站點的公交線路。如果存在查詢結果,則將其結果顯示,否則提示站點不存在。選擇該站點所列的線路信息列表中的線路時,則能顯示該線路詳細信息。

⑶ 換乘查詢功能

用戶進行“換乘查詢”時,系統首先判斷起點和終點輸入是否為空或不合法,如果是則彈出錯誤提示,否則首先進行直達查詢。如果存在查詢結果,則將其結果顯示,否則進行一次換乘查詢,如果存在查詢結果,則將其結果顯示,否則提示無直達和換乘路線。

2.2 數據庫設計

城市公交查詢系統的核心是數據庫,系統所有信息交互都是通過數據庫來實現的,因此數據庫結構設計至關重要。在仔細分析各功能系統數據信息及相互的關系以及手機軟件特點后,進行合理歸納提取,SQLite數據庫中共有3張表,分別為BusLineInfo表、BusStopInfo表和BusStopInLineInfo表,各表結構分別如表1、表2和表3所示。

3 系統開發

系統開發環境為JDK 1.6.0+Eclipse 3.5+Android SDK 2.1+ADT 0.9.5和SQLite數據庫,基本上實現了城市公交查詢系統的主要功能。系統幾個主要功能實現如下。

3.1 線路查詢

用戶通過線路名獲得該線路所有站點信息,效果圖如圖2所示,具體實現代碼如下:

public Bus[] queryLine(int line) {

Cursor cursor=db.query(BusStopInLineInfo, new String[] {

\"_id\", \"BusLine_id\", \"BusStop_id\", \"StopOrder\"},

\"BusLine_id= \"+line, 1, 1, 1, 1);

int row=cursor.getCount();

if (row==0 || !cursor.moveToFirst()) {

return 1;

}

Bus[] bus=new Bus[row];

for (int i=0; i

bus[i]=new Bus();

bus[i]._id=cursor.getInt(cursor.getColumnIndex(\"_id\"));

bus[i].BusLine_id=cursor.getInt(cursor.getColumnIndex

(\"BusLine_id \"));

bus[i].BusStop_id=cursor.getString(cursor.getColumnIndex

(\"BusStop_id \"));

bus[i].StopOrder=cursor.getInt(cursor.getColumnIndex

(\"StopOrder \"));

Log.i(\"tag\",\"bus\"+i+\"info:\"+bus[i].toString());

cursor.moveToNext();

}

cursor.close();

return bus;

}

3.2 站點查詢

用戶通過站點名獲得經過該站點的所有路線,效果圖如圖3所示,具體實現代碼如下:

public Bus[] queryStation(String site) {

Cursor c=db.query(BusStopInLineInfo, new String[] {

\"BusLine_id\", \"BusStop_id\", \"StopOrder\" },

\"BusStop_id like '%\"+site+\"%' \", 1, 1, 1, 1);

int row=c.getCount();

if (row==0 || !c.moveToFirst()) {

return 1;

}

Bus[] bus=new Bus[row];

for (int i=0; i

bus[i]=new Bus();

bus[i].BusLine_id=c.getInt(c.getColumnIndex(\"BusLine_id\"));

bus[i].StopOrder=c.getInt(c.getColumnIndex(\"StopOrder\"));

bus[i].BusStop_id=c.getString(c

.getColumnIndex(\"BusStop_id\"));

Log.i(\"tag\", \"bus\"+i+\"info:\"+bus[i].toString());

c.moveToNext();

}

c.close();

return bus;

}

3.3 公交換乘查詢

用戶通過點擊“換乘查詢”,跳轉到換乘查詢界面,在起始站和目標站中輸入站點名,點擊“查詢”按鈕,查詢起始站到目標站的換乘方案。換乘查詢又分為直達查詢和一次換乘。本文以一次換乘為例,效果圖如圖4所示,具體實現代碼如下:

public String queryTransRoute(String StrBegin,String StrFinish)

{ String result, StrSql;

result=\"\";

StrSql=\"select sr1.startpoint,sr1.busroute,sr1.endpoint,

sr2.busroute,sr2.endpoint,sr1.addnum+sr2.addnum\"+\"

from VIEW_TRANS sr1,VIEW_TRANS sr2 \"+\" where

sr1.endpoint = sr2.startpoint and \"+\"sr1.startpoint=

'\"+ StrBegin+\"'and sr2.endpoint='\"+StrFinish+\"'\";

Cursor c=db.rawQuery(StrSql, 1);

int resultCounts=c.getCount();

if (resultCounts==0 || !c.moveToFirst())

{ result=\"\";

Log.i(\"ResultCount if:\", \"\" + resultCounts);

}

else

{ Log.i(\"ResultCount else:\", \"\" + resultCounts);

for (int i=0; i

{ String colume1=c.getString(0);

String colume2=c.getString(1);

String colume3=c.getString(2);

String colume4=c.getString(3);

String colume5=c.getString(4);

int colume6=c.getInt(5);

Log.i(\"StaToSta Test:\", \"\"+colume1+colume2+colume3

+colume4+colume5);

result+= \"乘坐\"+colume2+\"路車到達”\"+colume3+\"“站,\n

轉乘\"+colume4+\"路車。\n共需要\"+colume6+\"站。\n----------\n\";

c.moveToNext();

}

}

c.close();

return result;

}

4 結束語

根據城市公交查詢的實際情況,采用Android平臺,以南通為例,設計開發的城市公交查詢系統,實現了對公交信息的線路查詢、站點查詢和換乘查詢。實驗表明,利用該系統可以方便地查詢到公交信息和得到換乘方法,為乘客方便、高效出行提供了幫助。但系統在公交換乘中僅限于直達查詢和一次換乘查詢,對于二次換乘或多次換乘查詢還待進一步研究。

參考文獻:

[1] 文斌等.基于Android的移動公交輔助導航系統設計與實現[J].成都信息工程學院學報,2012.27(5):437-442

[2] 崔琳等.城市公交線路查詢系統的設計與實現[J].宿州學院學報,2011.26(8):46-48

[3] 黃晶晶等.基于Android的昆明市手機公交查詢系統設計[J].電腦知識與技術,2012.8(17):4025-4027

主站蜘蛛池模板: 国产亚洲成AⅤ人片在线观看| 婷婷五月在线| 精品国产网| 91福利免费| 国产女人18毛片水真多1| 亚洲中文字幕97久久精品少妇| 国国产a国产片免费麻豆| 97超碰精品成人国产| 一级全黄毛片| 色屁屁一区二区三区视频国产| 91破解版在线亚洲| 狠狠亚洲婷婷综合色香| 精品国产一区二区三区在线观看| 丁香五月亚洲综合在线| 黄色国产在线| 欧美一区二区福利视频| 久久久久国产精品免费免费不卡| 亚洲区一区| 久久不卡国产精品无码| 伊人久久大香线蕉综合影视| 精品久久久无码专区中文字幕| 麻豆AV网站免费进入| 三区在线视频| 中文字幕免费视频| 精品三级在线| 麻豆精品在线播放| 为你提供最新久久精品久久综合| 亚洲国产天堂在线观看| 国产特一级毛片| 国产福利一区二区在线观看| 亚洲av日韩综合一区尤物| 国产真实乱子伦视频播放| 国产在线无码av完整版在线观看| 一本二本三本不卡无码| 欧美日韩成人在线观看| 亚洲视频一区| 中文字幕无线码一区| 婷婷丁香在线观看| 2021精品国产自在现线看| 人妻中文字幕无码久久一区| 国产色婷婷视频在线观看| 亚洲精品爱草草视频在线| 国产精品99久久久久久董美香| 欧美亚洲香蕉| www.日韩三级| 五月婷婷综合色| 毛片网站观看| 99手机在线视频| 好紧太爽了视频免费无码| 91视频免费观看网站| 国产乱人免费视频| 久久性视频| 永久免费AⅤ无码网站在线观看| 91福利在线观看视频| 欧美黄网在线| 九九热精品免费视频| 欧美在线免费| 欧美日本在线观看| 国产精品无码翘臀在线看纯欲| 国产成人久视频免费| 狠狠躁天天躁夜夜躁婷婷| 国产精品观看视频免费完整版| 99热国产这里只有精品无卡顿"| 亚洲AV成人一区二区三区AV| 国产亚洲第一页| 亚洲综合18p| 日韩国产精品无码一区二区三区 | 亚洲日韩精品伊甸| 亚洲黄网视频| 亚洲精品波多野结衣| 四虎亚洲精品| 亚洲综合专区| 性网站在线观看| 国产色婷婷视频在线观看| 国产精品男人的天堂| 久久99国产综合精品1| 国产午夜一级毛片| 久久激情影院| 国产精品丝袜视频| 日韩欧美中文| 免费视频在线2021入口| 国产乱人免费视频|