複製鏈接
請複製以下鏈接發送給好友

android軟件開發

鎖定
android軟件開發是Google於2005年併購了成立僅22個月的高科技企業Android,展開了短信、手機檢索、定位等業務,基於Linux的通用平台進行的開發。Android早期由“Android之父”之稱的Andy Rubin創辦。
中文名
android軟件開發
創    辦
Andy Rubin
編程語言
Java
成    立
2005年

android軟件開發定義

Google公司在2007年11月5日正式公佈這個操作系統,2008年,Patrick Brady於Google I/O演講“Anatomy & Physiology of an Android”,並提出的Android HAL架構圖。HAL以*.so檔的形式存在,可以把Android framework與Linux kernel隔開。Android擁有功能強大的API,出色的文檔,茁壯成長的開發人員社區,而且不需要為開發或發佈支付費用。隨着移動設備的日益普及,不管在怎樣的開發背景下,使用Android軟件開發新穎的手機應用程序都是一個令人為之振奮的良機。 [1] 

android軟件開發特性

應用程序框架支持組件的重用與替換 ·Dalvik虛擬機專門為移動設備做了優化 ·內部集成瀏覽器該瀏覽器基於開源的WebKit 引擎 ·優化的圖形庫 包括2D和3D圖形庫,
3D圖形庫基於OpenGL ES 1.0 (硬件加速可選) ·#SQLite 用作結構化的數據存儲·多媒體支持 包括常見的音頻、視頻和靜態印象文件格式(如 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) ·GSM電話 (依賴於硬件) ·藍牙Bluetooth, EDGE, 3G, and WiFi (依賴於硬件) ·照相機,GPS,指南針,和加速度計 (依賴於硬件) ·豐富的開發環境 包括設備模擬器,調試工具,內存及性能分析圖表,和Eclipse集成開發環境插件

android軟件開發架構

應用程序
Android以Java為編程語言,使接口到功能,都有層出不窮的變化,其中Activity等同於J2ME的MIDlet,一個 Activity 類(class)負責創建視窗(window),一個活動中的Activity就是在 foreground(前景)模式,背景運行的程序叫做Service。兩者之間通過由ServiceConnection和AIDL連結,達到複數程序同時運行的效果。如果運行中的 Activity 全部畫面被其他 Activity 取代時,該 Activity 便被停止(stopped),甚至被系統清除(kill)。
View等同於J2ME的Displayable,程序人員可以通過 View 類與“XML layout”檔將UI放置在視窗上,Android 1.5的版本可以利用 View 打造出所謂的 Widgets,其實Widget只是View的一種,所以可以使用xml來設計layout,HTC的Android Hero手機即含有大量的widget。至於ViewGroup 是各種layout 的基礎抽象類(abstract class),ViewGroup之內還可以有ViewGroup。View的構造函數不需要在Activity中調用,但是Displayable的是必須的,在Activity 中,要通過findViewById來從XML 中取得View,Android的View類的顯示很大程度上是從XML中讀取的。View 與事件(event)息息相關,兩者之間通過Listener 結合在一起,每一個View都可以註冊一個event listener,例如:當View要處理用户觸碰(touch)的事件時,就要向Android框架註冊View.OnClickListener。另外還有Image等同於J2ME的BitMap。
應用程序的運行
在模擬器上運行
仿真是虛擬設備(AVD),需要配置來運行我們的Android應用程序
步驟1、開放的AVD管理
步驟2、新的按鈕,點擊添加新設備,並配置您的設備設置。
步驟3、會有一個結果窗口顯示所有已配置你上一屏幕選擇。
步驟4、按“確定”,你將會看到你的設備列在有你可以關閉此窗口。
步驟5、運行你的Android應用程序項目從Eclipse,如果只有一個AVD配置,它會自動部署的應用程序也會出現一個窗口,選擇你的圖片。 仿真器將開始。
在設備上運行
Android應用程序可以直接部署在Android設備上,這幾個配置所需要的。
步驟1、在調試模式的設置可以設置應用程序:Android的<應用程序>元真可調試屬性。ADT 8這是默認的。
步驟2、您的設備上啓用USB調試:Android 3.2或以上轉至設置>應用程序>開發和啓用USB調試。
在Android 4更新,這是開發商選擇設置>。
注:在Android 4.2更新,開發者選項是默認隱藏。可以,去設定>android的版本號。返回先前屏幕找到開發商選擇。
步驟3、安裝USB驅動程序為您的設備,計算機識別你的設備。
步驟4、一旦設置和您的設備通過USB連接,從Eclipse菜單欄安裝您的應用程序在設備上選擇運行>運行(或運行>調試)。
中介軟件
操作系統與應用程序的溝通橋樑,並用分為兩層:函數層(Library)和虛擬機(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同時包含了Webkit,所謂的Webkit 就是Apple Safari瀏覽器背後的引擎。Surface flinger 是就2D或3D的內容顯示到屏幕上。Android使用工具鏈(Toolchain)為Google自制的Bionic Libc。
Android採用OpenCORE作為基礎多媒體框架。OpenCORE可分7大塊:PVPlayer、PVAuthor、Codec、PacketVideo Multimedia Framework(PVMF)、Operating System Compatibility Library(OSCL)、Common、OpenMAX。
Android 使用skia 為核心圖形引擎,搭配OpenGL/ES。skia與Linux Cairo功能相當,但相較於Linux Cairo, skia 功能還只是陽春型的。2005年Skia公司被Google收購,2007年初,Skia GL源碼被公開,Skia 也是Google Chrome 的圖形引擎。
Android的多媒體數據庫採用SQLite數據庫系統。數據庫又分為共用數據庫及私用數據庫。用户可通過ContentResolver類(Column)取得共用數據庫。
Android的中間層多以Java 實現,並且採用特殊的Dalvik虛擬機(Dalvik Virtual Machine)。Dalvik虛擬機是一種“暫存器型態”(Register Based)的Java虛擬機,變量皆存放於暫存器中,虛擬機的指令相對減少。
Dalvik虛擬機可以有多個實例(instance), 每個Android應用程序都用一個自屬的Dalvik虛擬機來運行,讓系統在運行程序時可達到優化。Dalvik虛擬機並非運行Java字節碼(Bytecode),而是運行一種稱為.dex格式的文件。
硬件抽像層
Android 的 HAL(硬件抽像層)是能以封閉源碼形式提供硬件驅動模塊。HAL 的目的是為了把 Android framework 與 Linux kernel 隔開,讓 Android 不至過度依賴 Linux kernel,以達成 kernel independent 的概念,也讓 Android framework 的開發能在不考慮驅動程序實現的前提下進行發展。
HAL stub 是一種代理人(proxy)的概念,stub 是以 *.so 檔的形式存在。Stub 向 HAL“提供”操作函數(operations),並由 Android runtime 向 HAL 取得 stub 的 operations,再 callback 這些操作函數。HAL 裏包含了許多的 stub(代理人)。Runtime 只要説明“類型”,即 module ID,就可以取得操作函數。
編程語言
Android 是運行於 Linux kernel之上,但並不是GNU/Linux。因為在一般GNU/Linux 裏支持的功能,Android 大都沒有支持,包括Cairo、X11、AlsaFFmpegGTKPangoGlibc等都被移除掉了。Android又以bionic 取代Glibc、以Skia 取代Cairo、再以opencore 取代FFmpeg 等等。Android 為了達到商業應用,必須移除被GNU GPL授權證所約束的部份,例如Android將驅動程序移到 userspace,使得Linux driver 與 Linux kernel徹底分開。bionic/libc/kernel/ 並非標準的kernel header files。Android 的 kernel header 是利用工具由 Linux kernel header 所產生的,這樣做是為了保留常數、數據結構與宏。
Android 的 Linux kernel控制包括安全(Security),存儲器管理(Memory Managemeat),程序管理(Process Management),網絡堆棧(Network Stack),驅動程序模型(Driver Model)等。下載Android源碼之前,先要安裝其構建工具Repo來初始化源碼。Repo 是 Android 用來輔助Git工作的一個工具。

android軟件開發就業前景

發展
Android在中國的前景十分廣闊,首先是有成熟的消費者,在國內,Android社區十分紅火,這些社區為Android在中國的普及做了很好的推廣作用。國內廠商和運營商也紛紛加入了Android陣營,包括中國移動,中國聯通,中興通訊,華為通訊,聯想等大企業,同時不僅僅侷限於手機,國內廠家也陸續推出了採用Android系統的MID產品,比較著名的包括由Rockchip和藍魔推出的同時具備高清播放和智能系統的音悦匯W7和2010年推出的原道N5,我們可以預見Android也將會被廣泛應用在國產智能上網設備上,將進一步擴大Andorid系統的應用範圍。另一方面,由於國內政策的限制,導致Android的部分功能(如Android market)在國內無法正常使用,常用的解決方法是使用VPN服務來訪問。
Gartner預計,到2016年底,將有23億部計算機、平板電腦和智能手機使用Android,而Windows設備數量為22.8億部。相比之下,到年底,Windows設備數量將達到15億部,而Android設備數量為6.08億部。
Android操作系統2008年才上市,隨後迅速成為主導性的智能手機平台,市場份額達到了2/3。與此同時,在快速發展的平板電腦市場,Android份額也位居第二。雖然Android是一款免費軟件,但它卻推動了谷歌核心的搜索業務增長。
由於越來越多的用户轉向平板電腦和智能手機,第三季度全球PC出貨量同比下滑8%,為2001年來的最大降幅。雖然微軟Windows長期統治PC市場,但在智能手機市場,微軟的份額僅約為3%。
就業前景和行業需求
隨着移動互聯網的到來和迅猛發展,移動互聯網開發人員的需求也是與日俱增。比如説android市場,國外Android市場正在如日中天的擴展,據市場研究公司IDC發佈研究報告稱,預計中國智能手機市場在全球市場上所佔份額將會從18.3%上升至26.5%,而美國市場所佔份額則將從21.3%下降至17.8%。相信在不久的將來會有更多的用户選擇Android系統的手機或是無線終端設備。
中國擁有世界上最大的手機用户羣,再加上3G的推出對整個行業的巨大推動作用,全世界所有大中小型手機制造商幾乎都在招聘Android工程師。然而每天有超過16萬台的Android設備出貨,一年後全球可能會有超過1億台的Android設備,以後將超越iphone成為智能手機平台的旗艦。

android軟件開發開發大會

AndroidWorld Global Developers Conference 安卓全球開發者大會(英文簡稱:AndroidWorld)是IDG美國國際數據集團旗下的知名展會品牌。主要針對基於Android系統平台的商業模式探討、技術交流、移動應用推廣的大會,是一次很好的探索和尋求共同發展、合作共贏的契機。AndroidWorld代表着未來移動互聯網產品和應用服務類型的發展趨勢。

android軟件開發語言特點

Android應用的開發語言用的是Java語言,並且在Android中也用到了Java核心類庫的大量的類,因此,在學習Android開發之前,可以先把Java基本語法和Java SE的基礎類庫好好學習一下。Android應用程序開發是以Java語言為基礎的,所以沒有紮實的Java基礎知識,只是機械的照抄別人的代碼,是沒有任何意義的。 建議在安卓課程前期的java學習階段中,需要用心的學好。
3G夢工場android培訓認為培訓學員分為兩類,一是針對入門級的學員,計算機專業出身或者至少有編程思想,經過培訓能掌握一部分基礎的java技術和an-droid系統的框架,再學習開發環境的搭建和編程軟件的使用後,就可以快速上手開發上層應用;另一類是針對有一定java技術基礎,想轉行進行An-droid開發的人員,他們有紮實的java技術和編程思想作基礎,經過培訓能加深對android系統的架構和特點的認識,這類人員經過培訓之後能接受針對An-droid系統更深層次開發的任務。

android軟件開發從事崗位

Android 研發工程師 Android測試工程師 Android遊戲開發工程師 Android軟件開發工程師 Android移植工程師

android軟件開發最新版本

Android的果凍豆系統已經從4.1升級到了4.2,所以一向喜歡迅速開發第三方ROM的CyanogenMod團隊當然也不會甘心落後的。在昨天放出30款Android設備的穩定版CM10(CM版的Android 4.1)之後,該團隊又宣佈接下來將全力開發針對Android 4.2的ROM。
Android 4.2果凍豆系統僅是對此前4.1的略微更新版本,所以CyanogenMod團隊表示,基於4.2的CM系統將會是CyanogenMod 10.1。

android軟件開發優勢

安卓手機系統的一大優勢在於其開放性和免費的服務,Android是一個對第三方軟件完全開放的平台,開發者在為其開發程序時擁有更大的自由度,和iphone的封閉性完全相反,所以安卓獲得了更好產商的支持,例如:HTC、三星、小米、摩托羅拉、LG、中國移動等,同時安卓也得到了大量開發者的支持,在國內一些安卓開發聯盟還有安卓開發大賽就足以證明了安卓的火熱程度。
架構概述
一、應用程序
Android 會同一系列核心應用程序包一起發佈,該應用程序包包括 email客户端,SMS 短消息程序,日曆,地圖,瀏覽器,聯繫人管理程序等。所有的應用程序都是使用JAVA 語言編寫的。
二、應用程序框架
開發人員也可以完全訪問核心應用程序所使用的API框架。該應用程序的架構設計簡化了組件的重用;任何一個應用程序都可以發佈它的功能塊並且任何其它的應用程序都可以使用其所發佈的功能塊(不過得遵循框架的安全性限制)。同樣,該應用程序重用機制也使用户可以方便的替換程序組件。
三、程序庫
Android 包含一些C/C++庫,這些庫能被 Android 系統中不同的組件使用。它們通過 Android 應用程序框架為開發者提供服務。
四、Android 運行庫
Android 包括了一個核心庫,該核心庫提供了JAVA 編程語言核心庫的大多數功能。
五、Linux 內核
Android 的核心繫統服務依賴於 Linux 2.6 內核,如安全性,內存管理,進程管理, 網絡協議棧和驅動模型。 Linux 內核也同時作為硬件和軟件棧之間的抽象層。
參考資料