陳靜涵 邢健 殷旭東
摘要:隨著科學教育的不斷發(fā)展進步,我國眾多的科研院所與科研企業(yè)的科研工作日益增多,隨之而來的科研管理工作也日益繁雜化,那么對科研管理系統(tǒng)的建設便成了強化科研單位管理水準的關鍵因素。文章通過對系統(tǒng)需求的深入分析、為科研管理人員設計出一套便利的軟件系統(tǒng),為科研管理工作提供了保障。
關鍵詞:科研系統(tǒng);系統(tǒng)設計;開發(fā);Java
0引言
隨著人們生活水平的提高,現(xiàn)在的節(jié)假日期間,人們往往會選擇旅游來放松自己、享受生活。但是,跟團旅游存在著很多限制和弊端,所以越來越多的人鐘愛于自駕游。然而,去哪旅游、怎么去、住在哪里、天氣是否適宜等等便成為了實質性問題。而手機導游軟件恰能很好地解決這些問題,給人們旅游度假提供方便。因此開發(fā)一款能夠運行在Android等智能手機上的導游應用具有較好的價值。
這款導游軟件可以將旅游信息等與移動互聯(lián)網(wǎng)結合,通過旅游應用為游客提供旅游路線推薦、景區(qū)景點介紹、景點信息交互、交通住宿購物等服務,使人們擺脫傳統(tǒng)導游的限制,完全按照自己的興趣來自助安排旅游行程,人們的旅游自主性大大提高,使人們更方便地獲得更佳的旅游生活體驗。
1系統(tǒng)需求與總體結構
1.1需求分析
該系統(tǒng)的目標是面向Android手機用戶。統(tǒng)計顯示,現(xiàn)在越來越多的人依賴手機應用程序,例如人們會在這些軟件上尋找滿意的餐廳、滿意的旅店等,而Android是目前用戶量最大的一個智能移動設備平臺。所以開發(fā)該系統(tǒng)具有良好的目標用戶群體。該應用不像以往的軟件只有某些單一的功能,這次將開發(fā)一款軟件,把這些服務集中在一起,讓用戶不用再去安裝超負荷的軟件。
1.2系統(tǒng)總體結構
該系統(tǒng)是一個基于Android開發(fā)的智能手機導游系統(tǒng),主要實現(xiàn)對江蘇省常熟地區(qū)相關景點的自助導游。游客可以通過該系統(tǒng)走遍常熟、玩遍常熟。用戶可以通過“常熟導游”或者“旅游路線”來自主選擇行程,制定一個詳細的規(guī)劃;用戶還可以使用“交通推薦”功能,以最快最好的方式,到達目的地;用戶可以使用“住宿推薦”和“餐廳推薦”功能,選擇滿意的旅店和餐廳。
2關鍵技術
2.1興趣點標注和POI搜索
在旅游相關應用的開發(fā)中,興趣點標注和信息搜索是一個重要的基礎功能。本系統(tǒng)使用百度地圖SDK實現(xiàn)這些功能,該SDK提供的檢索服務包括以下功能模塊:POI檢索,多關鍵字檢索,公交方案檢索,駕車路線檢索,步行路線檢索,地理編碼,反地理編碼,公交詳情檢索,在線建議查詢,短串分享。每個檢索功能模塊都包括一個主檢索對象,一個用于構造檢索參數(shù)的Option結構體,和一個用于接收檢索結果回調的Delegate,所有檢索服務都使用異步回調模式。使用檢索服務時,需要先初始化主檢索對象,然后通過主檢索對象以包含檢索參數(shù)的Option做為參數(shù)發(fā)起檢索,最后實現(xiàn)相應的檢索功能模塊的Delegate處理返回結果。系統(tǒng)整體結構如圖1所示。
2.2顯示自定義氣泡
在使用的百度地圖上標注自己定義的覆蓋物,定義一個MyPoiOverlay類繼承百度地圖SDK中PoiOverlay類,重寫onTap()方法獲取點擊地圖的具體位置,如果是旅游景點則彈出自定義的氣泡(顯示景點名稱和導航、詳細信息按鈕)。如果這個景點有詳細信息調用poiDetailSearch()方法顯示。導航按鈕則跳轉到RounteAetivity。
2.3定位功能
實現(xiàn)BDLocationListener接口,BDLocationListener中實現(xiàn)兩個方法,實現(xiàn)接受異步返回的定位結果,實現(xiàn)接受異步返回POi查詢結果,參數(shù)都是BDLocation。再次通過LocationClientOption類設置定位參數(shù)。例如打開GPS、設置坐標類型、發(fā)起定位請求的間隔。最后發(fā)起定位返回onReeeiveLocation。
2.4路線規(guī)劃
通過輸入一個目的地,可以發(fā)起路線規(guī)劃,支持多個途徑點和多種算路方式,最多支持添加3個途徑點,通過NE RoutePlan Mode類。通過設置算路結果監(jiān)聽器IRouteResultObserver,可以獲取算路的結果。通過定位功能取得當前位置,通過上個Activity獲取景點坐標。設置算路方式可以選擇步行、公交車、和自駕游。設置顯示方案個數(shù),顯示出合理的規(guī)劃路徑。
2.5導航功能
算路成功后會獲得算路結果RoutePlanModel,然后即可以根據(jù)算路結果發(fā)起導航,導航方式分為模擬導航和真實GPS導航兩種。進入到模擬導航或者GPS導航后,點擊轉向標按鈕即可以切換到文字導航,在文字導航界面,可以切換到HUD模式。mRoutePlanModel是算出的成功的導航路徑結果。
3設計與實現(xiàn)
3.1主界面設計
主界面是一個可以滑動的Galley空間,使用項目res/layout中的main.xml來定義。根據(jù)手勢的判斷,當手勢的滑行超過12像素就切換另一張圖片。主界面上的9個按鈕對面9個模塊。點擊任意一個時在其onClick事件中,使用Intent中封裝的Activity信息,調用startActivity()方法啟動相應的Activity組件進入新的模塊。用戶點擊對應的按鈕,就能跳轉到相應的頁面,得到想要查詢的信息界面如圖2所示。
3.2主要功能設計與實現(xiàn)
用戶可以訪問的功能和能夠進行的操作都從主頁面進入,主頁面上分布著9個控件,分別對應相應的頁面。如果用戶點擊某個按鈕,就能跳轉到對應的頁面,得到相應的服務,這些功能模型包括:(1)常熟導游:用戶使用該功能就能對整個常熟市的基本情況和旅游信息有一個總體的了解。這里包括常熟的所有地區(qū)和交通線路,對于不熟悉本市情況的用戶很有實用性。(2)旅游路線:用戶選擇想要游玩的地點,該系統(tǒng)就會推薦一條或幾條途徑這些的地點的可行線路,來供用戶選擇。(3)景點介紹:系統(tǒng)將常熟市所有的景點都涵蓋在了這一塊,里面包含了對景點的概況和介紹,讓游客有一個客觀的了解。(4)地圖導航:開啟該功能,就能對用戶選擇的路線進行導航,智能且實用。(5)旅游問答:用戶使用該控件,就能對旅行途中的問題進行一個簡單的提問,加強對該景點的了解。(6)景點掃描:該功能是讓用戶能夠對景點進行掃描,從而得到景點的詳細信息。(7)交通推薦:用戶選擇好目的地后,系統(tǒng)會進行一個路線推薦,里面包含了步行或者打的等方式到達,用戶根據(jù)自身條件進行選擇。(8)住宿推薦:用戶使用該功能,就能檢索自己選擇的地區(qū)的附近的所有可居住的旅店,用戶根據(jù)自身條件,自主進行選擇。(9)餐廳推薦:系統(tǒng)將常熟地區(qū)的比較好的餐廳都錄入了,用戶確定好地區(qū)后,系統(tǒng)就會推薦幾種餐廳,供用戶選擇,用戶可以根據(jù)某些限制條件如價格、環(huán)境等進行篩選。
4系統(tǒng)測試
該系統(tǒng)是在Eclipse集成開發(fā)環(huán)境下開發(fā)的,包含JDK插件和IDE環(huán)境,利用Java語言開發(fā)而成。這也是Android開發(fā)過程中必不可少的。自從2006年發(fā)布以來,不斷改進完善,目前最新版本為Mars的4.5版。軟件的調試是利用一個AVD虛擬機來進行的,也可以使用真實的手機進行。使用DDMS工具中的LogCat進行錯誤定位和信息查詢。在Android4.4和5.0的多款真實機型上對該軟件進行了測試,結果表明,該系統(tǒng)能夠正常運行。
傳統(tǒng)的導游軟件都是通過定位來查看當前位置以及周邊的情況,本系統(tǒng)操作與此類似。圖3為搜索興趣點的地圖界面,顯示當前附近的景點信息和道路狀況。在定位之后,用戶可以根據(jù)自己需要選擇自己的目的地。在選擇好地點后可以準確定位當前位置和旅游景點的目的位置,方便用戶導航到目的地。選擇目的地的功能我們目前實現(xiàn)的是通過查詢公交直達來查詢路線。另外通過飲食的具體圖片以及商家信息,提供用戶更好的咨詢方式如圖4所示。
5結語
文章開發(fā)的是集旅游路線推薦、景區(qū)景點介紹、景點信息交互、交通住宿購物等功能于一體的智能手機軟件,它設計操作方便、富有人性化、準確而實時,是人們在外旅游的很好伙伴。在功能的實現(xiàn)上提供了豐富的UI界面和良好的人機交互。相對于其他導游軟件而言,更加簡約美觀,具有較好的實用價值。