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