亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Android平臺的導航系統(tǒng)

        2014-11-23 06:19:18安志宏高宇飛
        衡水學院學報 2014年1期
        關鍵詞:指南針離線定位

        安志宏,高宇飛

        (衡水學院 數(shù)學與計算機科學學院,河北 衡水 053000)

        隨著移動終端技術及手機硬件的發(fā)展,智能手機已成為人們生活的重要組成部分.目前,市場占有率最大的當屬Android及IOS平臺.從2002到2007幾年內(nèi),可以說是塞班的天下.而自Android1.1發(fā)布以來,Android以其開源性,迅速占領了手機市場的半壁江山.Android平臺無論從接口,還是功能上,都有很強的優(yōu)勢.而在價格上,Android手機卻比IOS的蘋果手機低廉得多,使得蘋果手機似乎成為了一種高消費的奢侈品.在國內(nèi),Android手機更是占到了智能機市場 90 %的份額.傳統(tǒng)的以紙質(zhì)地圖來人工導航的方式就顯得格格不入.紙質(zhì)地圖不能更新,容易磨損,攜帶不便,在使用時有很大的不便.地圖科技化、自動化已成為相關產(chǎn)品發(fā)展的必然趨勢,將地圖融入Android,不僅使用簡單,而且還實現(xiàn)了智能導航,省去了人工,提高了導航的精確度.

        當前已有的地圖導航應用存在一定缺陷性.谷歌是最早提供地圖導航服務的商家之一,但國內(nèi)使用谷歌導航存在一定的依賴性,如果谷歌不給提供服務,那么用戶是不可能使用相關服務的.就在2010年2月23日,谷歌公司總部決定正式退出中國,并最終關閉中國的搜索服務,轉用香港服務器來提供簡體服務.同時,谷歌在中國相繼關閉了一系列的服務.這使得谷歌導航的使用存在很大的風險性.

        另外,現(xiàn)有產(chǎn)品的側重點往往在導航上,忽視了用戶在使用時遇到的問題,那就是方向的識別.地圖給出的路徑是在地圖上標注到達目的地的路線.而用戶通常在獲得了路徑以后,由于不確定方向,使得自己越走越遠,當發(fā)現(xiàn)方向不對而原路返回時卻浪費了不少的時間和精力.

        因此,本文提出了在開發(fā)系統(tǒng)時采用國內(nèi)數(shù)據(jù),基于 Android平臺,并在導航前讓用戶通過指南針功能明確方向的觀點.

        1 系統(tǒng)架構

        系統(tǒng)的物理架構主要是這樣的:基于Android API設計編碼,通過Android系統(tǒng)加載到Android移動平臺,而硬件平臺通過鍵盤及觸摸屏輸入請求及參數(shù)來調(diào)用GPS等模塊獲得相關數(shù)據(jù),再由顯示器返回給用戶[1].如圖1所示.

        圖1 系統(tǒng)物理結構

        2 UI規(guī)劃

        軟件在打開時首先顯示主界面,列出各項功能供用戶進行選擇,包括:地圖瀏覽、位置定位、公交路線查詢、路徑規(guī)劃、離線地圖管理、指南針等功能,點擊相對應的圖片即可進入各個功能模塊.

        為了方便用戶對地圖的查看,首先設計一個地圖瀏覽的功能,通過該功能,用戶可以查看全國各地的交通圖.并且提供給用戶對地圖的平移和縮放功能,通過放大功能使用戶能夠查看更為詳細的情況,通過縮小功能則可以從全局查看.如圖2所示.

        圖2 地圖瀏覽

        位置定位功能主要通過將用戶位置在地圖中作標記來實現(xiàn).當用戶位置發(fā)生改變時,通過設置監(jiān)聽器可以重新定位[2],實現(xiàn)動態(tài)定位.該功能的實現(xiàn)主要分為兩種方式,即 GPS定位與網(wǎng)絡定位[3].從精確度上分析,GPS定位的方法定位精確[4-5],無需網(wǎng)絡連接,但受周邊環(huán)境影響較大,有高層建筑物或是在室內(nèi)時,都無法定位.而網(wǎng)絡定位雖然在精度上不及 GPS定位,但網(wǎng)絡定位的方法速度較快,不受周邊環(huán)境影響,在一定程度上彌補了GPS的不足.定位時,用戶可以手動設定定位方式,打開GPRS,關閉GPS,則系統(tǒng)使用網(wǎng)絡定位;打開GPS,關閉GPRS,則使用GPS定位.定位成功,則返回用戶在地圖中的定位標記.

        公交路線查詢功能可以設置兩個參數(shù),分別為城市與線路,例如:查詢衡水市的 12路公交車,即輸入“衡水”,再輸入“12”.如圖3所示.

        圖3 公交路線

        路徑規(guī)劃通過用戶設置起點與終點,為用戶展示路徑,該功能主要使用網(wǎng)絡資源,通過向百度地圖的 API服務發(fā)送請求,來獲取路徑相關點,然后通過解析網(wǎng)絡或本地地圖數(shù)據(jù),在地圖上標記這些點,繪成路線,通過界面返回給用戶.

        離線地圖管理功能主要用來管理離線地圖,用戶可以輸入城市名稱,通過搜索來查看該城市的離線地圖,若存在則展示給用戶,不存在可以點開始按鈕進行下載,同時可以停止及刪除.再加入掃描離線包的功能,若導入了離線地圖,通過該功能可以自動識別并加載.

        指南針功能為用戶指明方向,使用時只需將手機放平,與水平面平行,箭頭所指方向為北方,該功能主要通過手機的傳感器實現(xiàn),具體運用到了手機的電子羅盤功能.通過Android的sensor類來管理.

        3 系統(tǒng)主要功能編碼實現(xiàn)

        3.1 地圖瀏覽編碼

        該功能主要用到幾個基礎類:

        MapActivity:該類用來顯示 AndroidMap的 Activity類,如果沒有本地地圖資源,則需要連接底層網(wǎng)絡來獲取地圖數(shù)據(jù).所有要顯示 MapView的 Activity都要繼承 MapActivity類,由于該類屬于抽象類,所以在onCreate()中,都必須創(chuàng)建一個MapView的實例.

        MapView:主要用來顯示地圖的 View組件,繼承自 android.view.ViewGroup.同時,該組件只能被MapActivity來創(chuàng)建,并配合使用.由MapActivity來管理MapView連接網(wǎng)絡或本地資源的線程.

        MapController:用來控制地圖的移動和縮放等.使用 MapController來控制地圖,可以通過下面的代碼來實現(xiàn):

        MapController mapController= mapView.getController(); //獲取控制對象

        mapView.displayZoomControls(true); //實現(xiàn)縮放顯示并可控

        GeoPoint point = new GeoPoint((int) (37.715 * 1E6), (int) (115.704 * 1E6));//設置要顯示的地圖中心點,此處設為衡水市區(qū)

        mapController.setCenter(point);//加載到地圖組件中

        mapView.getController().setZoom(12); //設置默認顯示大小級別

        mapView.setDoubleClickZooming(true)//設置雙擊實現(xiàn)放大

        3.2 定位編碼

        該功能主要在地圖組件的基礎上標記當前手機所處的位置,通過GPS或網(wǎng)絡方式向定位SDK發(fā)出請求,SDK根據(jù)定位依據(jù)通過LocationClientOption方法返回定位結果.再設置LocationListener監(jiān)聽器來監(jiān)聽位置的改變,重新標記當前位置.

        3.3 導航編碼

        該功能需要實現(xiàn)MKSearchListener接口中的onGetWalkingRouteResult方法,該方法首先設置起點與終點,返回兩點之間在地圖中標記的路徑.

        3.4 指南針核心編碼

        public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        System.out.println("MainActivity.onCreate()");

        setContentView(R.layout.activity_main);

        // 獲取界面中顯示指南針的圖片

        znzImage = (ImageView) findViewById(R.id.znzImage);

        // 獲取真機的傳感器管理服務

        mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);

        }

        @Override

        protected void onResume() {

        super.onResume();

        System.out.println("MainActivity.onResume()");

        // 為系統(tǒng)的方向傳感器注冊監(jiān)聽器

        mSensorManager.registerListener(this,

        mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION),

        SensorManager.SENSOR_DELAY_GAME);

        }

        public void onSensorChanged(SensorEvent event) {

        System.out.println("MainActivity.onSensorChanged()");

        // 真機上獲取觸發(fā)event的傳感器類型

        int sensorType = event.sensor.getType();

        // 模擬器上獲取觸發(fā)event的傳感器類型

        switch (sensorType) {

        case Sensor.TYPE_ORIENTATION:

        // 獲取繞Z軸轉過的角度.

        float degree = event.values[0];

        // 創(chuàng)建旋轉動畫(反向轉過degree度)

        RotateAnimation ra = new RotateAnimation(currentDegree, -degree,

        Animation.RELATIVE_TO_SELF, 0.5f,

        Animation.RELATIVE_TO_SELF, 0.5f);

        // 設置動畫的持續(xù)時間

        ra.setDuration(200);

        // 運行動畫

        znzImage.startAnimation(ra);

        currentDegree = -degree;

        break;

        }}

        4 結語

        指南針功能的實現(xiàn)使用戶成功避免了導航方向的錯誤,定位以及導航功能為用戶出行帶來了極大的方便.同時,百度地圖API的使用擺脫了對國外數(shù)據(jù)的依賴.相信導航類的產(chǎn)品在今后會逐漸解決并完善方向問題,并且逐漸減小對國外地圖數(shù)據(jù)的依賴性.

        [1] 隆志堅.Android平臺基于Google Map Api的導航應用技術研究和實現(xiàn)[J].辦公自動化,2011(16):46-48.

        [2] 曾薪夷.基于Android平臺的GPS導航系統(tǒng)的設計與實現(xiàn)[J].計算機與現(xiàn)代化,2012(9):255-258.

        [3] 劉洋.GPS+無線網(wǎng)絡:混合定位助力LBS[J].電子設計技術,2009(4):82.

        [4] 李明,陳曉,何鋒鋒.GSM網(wǎng)絡在GPS/GSM衛(wèi)星定位公眾服務系統(tǒng)的應用[J].移動通信,2008(13):60-64.

        [5] 鄔群勇,張愛國,許其鳳,等.GPS移動定位與移動網(wǎng)絡定位精度的分析[J].全球定位系統(tǒng),2010(5):33-37.

        猜你喜歡
        指南針離線定位
        天然的指南針
        異步電機離線參數(shù)辨識方法
        防爆電機(2021年4期)2021-07-28 07:42:46
        觀展指南針
        汽車觀察(2021年4期)2021-05-10 04:06:36
        呼吸閥離線檢驗工藝與評定探討
        《導航定位與授時》征稿簡則
        淺談ATC離線基礎數(shù)據(jù)的準備
        Smartrail4.0定位和控制
        離線富集-HPLC法同時測定氨咖黃敏膠囊中5種合成色素
        中成藥(2018年2期)2018-05-09 07:20:09
        找準定位 砥礪前行
        看圖寫話有妙招
        久久综合亚洲鲁鲁五月天| 亚洲人成7777影视在线观看| 亚洲综合伦理| 中文字幕亚洲中文第一| 国产性自爱拍偷在在线播放| 成年无码av片在线| 天天综合久久| 91精品国产色综合久久不| 不卡一区二区视频日本| 日本japanese丰满多毛| 亚洲国产一区在线二区三区| 自拍偷拍一区二区三区四区| 国产亚洲自拍日本亚洲| 亚洲va无码手机在线电影| 欧美a级在线现免费观看| 久久亚洲精品成人av观看| 麻豆精品国产av在线网址| 大陆极品少妇内射aaaaaa| 欧美成人www免费全部网站| 蜜桃一区二区三区在线视频| 无码少妇丰满熟妇一区二区 | 在线播放亚洲丝袜美腿| 无码av一区二区大桥久未| 欧美伊人网| 国产三级精品三级在线| aaa日本高清在线播放免费观看 | 一级二级中文字幕在线视频| 亚洲一区二区三区国产精品视频| 少妇精品亚洲一区二区成人| 亚洲一线二线三线写真| 美女超薄透明丝袜美腿| 激情视频在线观看好大| 婷婷色香五月综合激激情| 欧美整片第一页| 久久亚洲精品中文字幕蜜潮| 亚洲熟妇无码久久精品| 中文字幕亚洲乱码熟女在线萌芽| 中文字幕偷拍亚洲九色| 大陆老熟女自拍自偷露脸| 亚洲av无码精品色午夜| 精品三级久久久久久久|