吳 格(公安海警學院,浙江寧波315000)
android平臺下的手機定位系統(tǒng)設(shè)計分析
吳格
(公安海警學院,浙江寧波315000)
目前我國的通訊技術(shù)空前發(fā)展,手機的更新?lián)Q代速度快到令人咋舌,幾乎每天都會有新的手機產(chǎn)生。3G、4G移動網(wǎng)絡(luò)的應用極大的提高了手機的上網(wǎng)運行速度。手機已經(jīng)是通訊工具那么簡單,它的功能復雜并且越來越強大。手機定位是近幾年新興的技術(shù),本文主要探究了在android平臺下手機定位系統(tǒng)的研發(fā),重點分析了android地圖的開發(fā)和應用。
android平臺;手機定位;設(shè)計;地圖;功能
中國的網(wǎng)絡(luò)技術(shù)從起步到高速發(fā)展只用了短短40年的時間,目前我國的手機網(wǎng)民數(shù)量也已經(jīng)超過了4億人口,數(shù)量巨大的消費群體帶動了手機行業(yè)、軟件行業(yè)的飛速發(fā)展。Android系統(tǒng)手機已經(jīng)占領(lǐng)了全球60%的手機市場,應用于該系統(tǒng)的軟件、APP等花樣繁多,它們中有80%附帶定位系統(tǒng)[1]。android平臺下的手機定位系統(tǒng)這給人們的生活帶來極大的便利。
Android系統(tǒng)的組成為框架結(jié)構(gòu),一共有4層。Android系統(tǒng)的第一層與第一層是由Java代碼控制,為整個系統(tǒng)提供API接口,編程使用本地代碼,方便Android系統(tǒng)程序的開發(fā)。第三層與第四層主要由C、C++控制,將用戶空間和內(nèi)核空間分隔,使系統(tǒng)內(nèi)部分工明確[2]。
Android系統(tǒng)的結(jié)構(gòu)的核心是Linux操作系統(tǒng)。Android系統(tǒng)的最底層必須長期維持在穩(wěn)定狀態(tài),系統(tǒng)開發(fā)者為其設(shè)定了IPA訪問權(quán),對任何程序進行開發(fā)都必須遵循Android系統(tǒng)的結(jié)構(gòu)規(guī)則。ApplicationFrameworkce層中有Android系統(tǒng)的應用程序框架,上一層程序所需各類組件都由它提供,它設(shè)計的目的就是為了完成系統(tǒng)中組件的互享。這一層應用程序的可使用組件范圍廣泛,既可以使用自己內(nèi)部的組件也可以使用其他程序的,但是這些組件的應用都必須經(jīng)過安全機制的檢查。Application層的主要功能就是為訪客提供訪問空間,該層中預設(shè)了系統(tǒng)的必要應用程序,比如日歷、通訊錄、地圖等等。
(1)android地圖定位技術(shù)。Android系統(tǒng)之所以能被廣泛地應用,這和它的靈活性是分不開的,它可以支持多種技術(shù)的開發(fā)和應用。Android中設(shè)置了一個和位置相關(guān)的功能庫——Android.location,以方便手機定位系統(tǒng)程序開發(fā)應用。Android.location中包括了所有與定位有關(guān)的分類,比如LocationListener(位置監(jiān)聽者)、LocationProvider(位置提供者)[3]。
LocationListener的主要工作就是監(jiān)聽系統(tǒng)數(shù)據(jù)的變化的狀況,一旦監(jiān)聽對象的位置變動,位置監(jiān)聽者就會將其回調(diào)。這一分類的工作方式主要為當監(jiān)聽設(shè)備位置變化時及時更新系統(tǒng)的位置順序、適時啟用或者禁用LocationProvider。
LocationProvider的主要功能就是存儲位置數(shù)據(jù)的全部信息,如果有新的位置數(shù)據(jù)及時更新,并且按照一定的周期匯報監(jiān)聽對象的位置信息。它的數(shù)量沒有限制,開發(fā)者可以根據(jù)需要自己定義LocationProvider的功能和個數(shù)。
(2)android地圖應用技術(shù)。Android系統(tǒng)中有很多訪問API和MAP,其中就包括地圖功能服務包,這一服務包的主要功能包括圖層疊加功能、圖像顯示功能、地圖控制功能。
MapActivity顯示地圖圖像,MapView和MapActivity結(jié)合顯示地圖View組件。MapActivity經(jīng)過一定程序變化成為MapView,MapView通過聯(lián)網(wǎng)或啟用由MapActivity控制的后臺線程文件操作圖像。
MapController通過采集地圖坐標,經(jīng)過點觸作用進行圖像的縮放、裁剪、位移,進而管理MapView。要想操作地圖圖像,必須先建立實際MapControl對象或者標記地圖。
設(shè)計android平臺下手機定位系統(tǒng)的初衷是方便人們的出行和生活,所以在進行該系統(tǒng)的功能設(shè)計時,必須考慮的使用者的的需要。一般來說手機定位系統(tǒng)應該具有以下四個功能:移動定位、路程導航、查詢、靜止定位,這些功能在android系統(tǒng)下能夠隨時切換才能滿足人們對手機定位的基本需要。
(1)手機界面功能設(shè)計。定位系統(tǒng)的手機界面必須簡潔明了??偨缑姘?個小的選擇界面并且要在四個小的選擇界面上設(shè)定按鈕。不管是大界面還是小界面,設(shè)計他們的根本目的就是顯示地圖圖像,為人們提供導航、定位服務。為了給圖像提供更多的空間,在設(shè)計時要盡可能減少不必要的文本欄、按鈕、通知欄的添加。移動定位功能的實現(xiàn)主要依靠定位系統(tǒng)的位置監(jiān)聽者實時監(jiān)控地址變化;系統(tǒng)的查詢功能通過文本欄文字輸入或者語音輸入關(guān)鍵詞,經(jīng)過內(nèi)設(shè)程序的計算、運行完成;路程導航通過輸入起始地址和目標地址經(jīng)定位系統(tǒng)計算實現(xiàn),并將路程標注在地圖上。同時,界面還要圖像具備縮放、旋轉(zhuǎn)、下載功能,以方面不同群體用戶的使用。界面布局必須根據(jù)不同用戶的習慣、審美進行設(shè)計,或者直接設(shè)計多種布局以供用戶自行選擇。
(2)定位系統(tǒng)跳轉(zhuǎn)頁面設(shè)計。手機定位系統(tǒng)界面包括4個功能,怎樣讓這4個功能協(xié)調(diào)工作,既互不影響又能密切聯(lián)系完成定期工作?通常情況下,要設(shè)計每個功能的跳轉(zhuǎn)頁面,在按下某個功能的按鈕后,系統(tǒng)會自動進入該功能的頁面。頁面的跳轉(zhuǎn)由Intent實現(xiàn),通過各個組件之間的信號傳遞完成。組建Intent實例,要給Intent對象命名一個與需要操作的組件相同的名稱,如果已經(jīng)設(shè)定了目標組件,android系統(tǒng)會啟動該組件,否則android系統(tǒng)就會利用Intent-filter定位與Intent實例合適的組件。
(3)主界面設(shè)計。Android平臺下手機定位系統(tǒng)的主界面的布局多為線性布局,這一布局方式可以方面開發(fā)者在界面的任何方位寫入添加的控件程序。線性布局分為水平布局和垂直布局兩種,所謂水平布局是將所有的子元素排在一行,每一行會有統(tǒng)一的行高而每一個子元素的寬度不會受到限制;垂直布局是指將所有的子元素在空間內(nèi)垂直排列,每一行只能有一個子元素,并且每列不會限制子元素的高度。Android平臺下該系統(tǒng)的主界面布局格式一半以上采用垂直布局,在主界面上添設(shè)4個按鈕,用以表示移動定位、路程導航、查詢、靜止定位。開發(fā)者可以將程序代碼按照需要定義為漢字語言,并且能夠任意調(diào)整按鈕大小和各個按鈕的位置,以求達到最好的主界面設(shè)計效果。既要保證主界面簡潔實用,又要使它具備一定的美觀性。
隨著科技的不斷創(chuàng)新進步,手機從原來的奢侈品變成了生活必需品融入千家萬戶。目前使用最多的手機系統(tǒng)就是Android系統(tǒng),自它問世開始,就受到人們的追捧。手機定位系統(tǒng)和Android系統(tǒng)的結(jié)合碰撞出了新的火花,為Android系統(tǒng)的進一步推廣奠定了堅實基礎(chǔ)。
[1]代敏.基于Android平臺的手機定位區(qū)域性服務設(shè)計及應用[D].昆明理工大學,2012.
[2]董超.基于Android的手機定位服務系統(tǒng)設(shè)計[D].哈爾濱理工大學,2013.
[3]郭蕊.基于Android平臺的GPS定位系統(tǒng)的設(shè)計與實現(xiàn)[J].北京工業(yè)職業(yè)技術(shù)學院學報,2012(02):54-58.
吳格(1991—),男,浙江溫州,本科,研究方向:安卓手機定位系統(tǒng)。