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

基于Android平臺Google地圖的開發

2015-02-22 11:41:28王雨澤
河南科技 2015年23期
關鍵詞:功能

王雨澤

(南京市第一中學,江蘇 南京 210001)

Android是時下一個熱門名詞,它是Google公司發布的基于Linux的開源手機平臺,該平臺由操作系統、中間件和應用軟件組成,是第一個可以完全定制、免費、開發的移動設備操作平臺。Android平臺有豐富的應用程序,也大幅度降低了應用程序的開發費用。而且,Android底層使用開源的Linux操作系統,同時開放了應用程序開發工具,使所有程序開發人員都在統一、開放的開發平臺上進行開發,保證了Android應用程序的可移植性。

1 Android的系統架構

Android操作系統的系統架構像是在蛋糕店購買的一個多層蛋糕,在移動設備的硬件和用戶之間是Android軟件堆棧。Android軟件堆棧可以分為以下四個層次。

1.1 應用程序層

用戶在Android操作系統上執行的是應用程序,這也是用戶直接接觸的Android操作系統。基本上,Android默認內置一些核心應用程序,包含瀏覽器、日歷、通信錄和打電話等,所有Android應用程序都是使用Java語言開發的。

1.2 應用程序框架層

位于應用程序層之下的是應用程序框架層,這一層提供高級的建構組件,即用于創建Android應用程序的一組類集合,換句話說,應用程序框架代表Android操作系統實現的眾多Java類,我們只需調用適當對象的方法,或繼承指定類來擴展其功能,就可以快速創建Android應用程序。

1.3 Android運行時庫和其他庫層

Android運行時庫由Dalvik虛擬機和核心Java函數庫(提供了JAVA語言核心庫內的大部分功能)組成,Dalvik虛擬機是Google針對移動設備所實現的Java虛擬機,Android應用程序是使用Java語言編寫和編譯,在Dalvik VM上執行,換句話說,Java程序代碼在編譯成Java類文件后,還需轉換成Dalvik的Dex個是,才能在Dalvik虛擬機上執行。同時,Android提供了豐富的函數庫,負責支持應用程序框架各組件的執行,這是一些使用C/C++語言編寫的函數庫,包括瀏覽器引擎的WebKit、3D繪圖的OpenGL、數據庫的SQLite和支持多種媒體播放的函數庫。

1.4 Linux內核層

Linux內核負責提供系統的核心服務,包括線程、低級的內存管理、網絡、進程管理、電源管理和硬件的驅動程序。

2 Google Map

提起Google,人們最先想到的一定是它的搜索引擎,不過繼搜索引擎之后,Google地圖的影響力越來越大。在Android系統剛剛起步的時候,Google就看到了基于定位服務的應用潛力,并將Google地圖的成功經驗帶入了Android系統當中。很多基于定位功能的應用程序最終都需要顯示地圖,Google地圖已經可以非常成熟地顯示交互式地圖,其商業模式還允許第三方網站將Google地圖嵌入到自己的頁面中。Google地圖的大部分功能都可以在Android平臺上實現,Android平臺下的開發者可以將Google地圖嵌入到自己的應用程序中。

Google地圖是 Google 公司提供的電子地圖服務,包括局部詳細的衛星照片。能提供三種視圖:一是矢量地圖(傳統地圖),可提供政區和交通以及商業信息;二是不同分辨率的衛星照片(俯視圖,跟 Google Earth 上的衛星照片基本一樣);三是地形視圖,可以用以顯示地形和等高線。

3 基于Android平臺的Google Map 應用實例

本實例是以eclipse與android SDK為開發工具,開發一款在Android平臺上運行的Google地圖應用,具有注冊用戶,登陸的功能,能在屏幕上顯示出地圖,并能夠選擇普通模式和衛星模式,能夠具有定位功能,在地圖上完成標注點并繪制標注點之間的軌跡的功能。主要思路就是將Google API包加入至項目中,然后在顯示地圖的布局文件中添加顯示Google map的組件。并在顯示地圖Activity中添加圖層,實現標注點和繪制軌跡的功能。定位則是通過調用底層GPS服務,來獲得當前的位置信息。登陸與注冊功能則是和J2EE項目中的同類功能基本相同。

3.1 開發環境的搭建

Android應用程序由Java語言編寫,因此我們選用開源的eclipse作為IDE,并安裝android SDK和AVD即可,在這里就不多贅述了,可查閱相關教程完成。

3.2 登陸與注冊

本實例只存儲一個用戶名與密碼即可,因此我們選用SharedPreference這種數據結構來存儲用戶名和密碼。Android平臺的應用開發,將功能實現與布局分開,即我們在java文件中實現功能,在xml文件中實現程序圖形界面的布局。我們在java代碼中如果需要用到布局文件中的某個按鈕(Button)或者是編輯框(EditText)等組件時,是通過這個組件在整個項目中的ID去訪問,在java程序初始化的時候,用 findViewById這么一個方法去訪問某個組件。按鈕控件我們需要添加單擊事件以及單擊響應時間。實現的部分代碼如下:

3.3 地圖的顯示

要顯示Google Map,我們需要在Google網站上申請一個Google API key, 并通過這個唯一的Google API key來“激活”我們所開發的應用程序。在Google上可以搜索到詳細教程步驟,在此也不贅述了。在獲取到密鑰后,我們在主布局中添加相應的xml代碼,就可以在屏幕上顯示Google地圖了。

實現定位功能的主要核心代碼如下:

3.4 標注點以及標注點間繪制軌跡

在Google Map中我們可以定義一個圖層類(Overlay),并在這個圖層上繪制標注點以及標注點之間的軌跡。Canvas是Android.Graphics包中的一個類,顧名思義,就是畫布的意思,我們可以在canvas上繪制各種我們想要的圖像。除了在畫布上繪制之外,還需要設置一些關于畫布的屬性,比如,畫布的顏色、尺寸等。

繪制軌跡的時候通過Google map的一項服務功能,即向服務器發送兩個點之間的經緯度,然后從服務器返回路線,再在地圖上沿著街道繪制出可行的線路,即完成了導航的功能。從請求這個服務的URL中能夠看出,當mode=driving時,返回的線路是駕駛路線,這個時候考慮到車道的單雙向問題,可以為駕駛員提供單雙行道的路線信息,不會違法交通規則;而當mode=walking時,返回的路線是步行路線,這個時候考慮的則是街道是否允許步行什么地方有人行橫道等等。

這個功能的難點是在解析從服務器返回的xml文檔上,解析的主要代碼如下:

3.5 運行結果

經過調試和修改后,實例部分運行的結果如下:

圖 地圖定位和繪制軌跡

4 結語

Android手機應用程序開發著眼于它的整個體系構架,是一項復雜的工程。本文分析了Android體系的層次架構,并通過一個應用實例開發驗證了其平臺的可用性。下一步的工作是在此基礎上,結合用戶個性化的需求進行拓展開發,以提供更加個性化的服務。

[1]張波,趙雙明.基于Android平臺的百度地圖開發研究[J].軟件導刊,2015,14(7):96-98.

[2]張仕成.基于Google Android 平臺的應用程序開發與研究[J].電腦知識與技術.2009,5(28):7959-7962.

[3]柳林,唐新明等.移動終端位置服務系統的實現[J].計算機工程與設計,2007,28(5):1069-1071.

[4]Darcey,S.Android移動應用開發從入門到精通[M].北京:人民郵電出版社,2010.

[5]Menglee,W.Android編程入門經典[M].北京:清華大學出版社,2012.

猜你喜歡
功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
主站蜘蛛池模板: 国产系列在线| 熟妇人妻无乱码中文字幕真矢织江 | 亚洲欧洲日本在线| 免费A级毛片无码无遮挡| 麻豆精品国产自产在线| 成人国产精品一级毛片天堂 | 国产人在线成免费视频| 国产 在线视频无码| 国产成人精品在线| 伊人久久福利中文字幕| 国产第一页亚洲| 在线播放国产99re| 22sihu国产精品视频影视资讯| 国产美女一级毛片| 国产另类乱子伦精品免费女| 国产欧美日韩综合在线第一| 一区二区三区在线不卡免费| 91精品综合| 二级特黄绝大片免费视频大片| 久久精品无码一区二区国产区| 国产日韩精品一区在线不卡| 久久不卡国产精品无码| 亚洲第一色网站| 国产无遮挡猛进猛出免费软件| 欧美天堂在线| 麻豆AV网站免费进入| 中文成人在线| 亚洲三级影院| 国产精品19p| 中文字幕免费播放| 无码日韩视频| 久青草国产高清在线视频| 国产精品无码在线看| 国产成人亚洲精品色欲AV| 亚洲av无码久久无遮挡| 久久久受www免费人成| 国产美女精品一区二区| 国产香蕉97碰碰视频VA碰碰看| 大香伊人久久| 日本草草视频在线观看| 国产视频 第一页| 国产精品香蕉在线| 无码有码中文字幕| 亚洲av中文无码乱人伦在线r| 97国产在线播放| 亚洲男女在线| vvvv98国产成人综合青青| 热热久久狠狠偷偷色男同| 精品福利网| 欧美特级AAAAAA视频免费观看| 国产日韩精品一区在线不卡 | 在线另类稀缺国产呦| 毛片免费观看视频| 98超碰在线观看| 香蕉99国内自产自拍视频| 无码精油按摩潮喷在线播放 | 婷婷丁香色| 国产午夜一级淫片| 亚洲精品视频免费看| 青青草原偷拍视频| 成人毛片免费观看| 在线欧美日韩| 国产乱人伦AV在线A| 午夜日b视频| 黄色网址手机国内免费在线观看 | 日韩精品无码免费一区二区三区| 天天色天天操综合网| 无码粉嫩虎白一线天在线观看| 黄色国产在线| 99re这里只有国产中文精品国产精品| 国产v精品成人免费视频71pao | 中文成人在线| 日韩精品欧美国产在线| 精品成人一区二区三区电影 | 成人福利免费在线观看| 91国内外精品自在线播放| 久久亚洲中文字幕精品一区| 亚洲国产精品一区二区高清无码久久| 嫩草国产在线| 一本色道久久88亚洲综合| 欧美精品啪啪一区二区三区| 亚洲成人在线网|