查看: 47902|回覆: 6
打印 上一篇 下一篇

Android 資料介紹

[複製鏈接]
字體大小: 正常 放大

5

主題

0

好友

5

積分

居民

跳轉到指定樓層
1#
發表於 2012-8-10 06:28:38 |只看該作者 |倒序瀏覽
[轉載 - 維基百科]

ANDRIOD

Android(讀音:['ændrɔid])是一個以Linux為基礎的半開放原始碼作業系統,主要用於移動設備,由Google開放手持設備聯盟持續開發與領導。
Android 系統最初由安迪·魯賓(Andy Rubin)開發製作,最初主要支援手機,於2005年8月被Google收購。2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組成開放手持設備聯盟(Open Handset Alliance)來共同研發改良Android系統,隨後,Google以Apache免費開源許可證的授權方式,發布了Android的源代碼。讓生產商推出搭載Android的智慧型電話,Android作業系統後來更逐漸拓展到平板電腦及其他領域上。
Google透過官方網上商店平台Google Play,提供應用程式和遊戲供用戶下載,截止至2012年6月,Google Play商店擁有超過60萬個官方認證應用程式。同時用戶亦可以通過第三方網站來下載。
2010年末數據顯示,僅正式推出兩年的Android作業系統在市場佔有率上已經超越稱霸逾十年的諾基亞Symbian系統,成為全球第一大智慧型手機作業系統。



歷史 : -

成立


2003年10月,有「Android之父」之稱的安迪·魯賓(Andy Rubin)在美國加利福尼亞州帕洛阿爾托建立了Android科技公司(Android Inc.),並與利奇·米納爾(Rich Miner)、尼克·席爾斯(Nick Sears)、克里斯·懷特(Chris White)共同發展這家公司。談到建立Android科技公司的原因,魯賓說:「聰明的移動設備能更好的意識到用戶的愛好和要求。」儘管Android科技公司的創始人和員工過去都具有各自的科技成就,但是Android科技公司的經營只顯露出它在智慧型手機軟體的方面。
同年,魯賓為Android科技公司花光了所有的錢。就在這時,史蒂夫·帕爾曼(Steve Perlman)遞給了魯賓一個信封,在裡面裝有1萬美金的現金;帕爾曼並不是以投資的方式給魯賓這筆錢,因為他拒絕了魯賓給他的股份。



Google的收購及發展

2005年8月17日,Google收購了Android科技公司,Android科技公司成為Google旗下的一部分。包括米奇·米納爾、克里斯·懷特等所擁有的全資子公司,所有Android科技公司的員工都被併入Google。當時沒有人知道Google為什麼作出這項收購,有許多的猜測,後來證明Google正是藉助此次收購正式進入移動領域。
在Google,魯賓領導著一個負責開發基於Linux內核移動作業系統的團隊,這個開發項目便是Android作業系統。Google的合作平台為Android提供了廣闊的市場,Google給予各大硬體製造商、軟體開發商一個靈活可靠的系統升級承諾,並保證將給予它們最新版本的作業系統。
2006年12月,《華爾街日報》和英國廣播公司(BBC)報導了Google有可能進入移動領域的傳聞,Google有可能推廣移動領域下的各種Google服務,並且將推出一款名為Google電話的自主品牌智慧型手機。另有傳聞指出,按照Google的作風,將有可能呈現出新的智慧型手機製造商和運營商模式。
2007年9月,Google送出了多項移動領域的專利申請。但並沒有人知道Google將會推出的是一款名為Android的智慧型手機作業系統,更多的猜測是Google會推出一款像iPhone一樣的自有品牌智慧型手機系列。



成立開放手持設備聯盟

2007年11月5日,在Google的領導下,開放手持設備聯盟成立,最早的一批成員包括Broadcom公司、HTCIntelLGMarvell等公司。開放手持設備聯盟的建立目的是為了創建一個更加開放自由的移動電話環境。而在開放手持設備聯盟創建的同一日,聯盟對外展示了他們的第一個產品:一部搭載了以Linux 2.6為內核基礎的Android作業系統的智慧型手機。2008年12月9日,新一批成員加入開放手持設備聯盟,包括ARM華為索尼等公司。
同時,一個負責持續發展Android作業系統的開源代碼項目成立了AOSP(Android Open Source Project) 。除了開放手持設備聯盟之外,Android還擁有全球各地開發者組成的開源社區來專門負責開發Android應用程式和第三方Android作業系統來延長和擴展Android的功能和效能。



許可證

Android作業系統使用開放免費源代碼許可證,一切源代碼都是公開免費的。Google對Android所使用的Linux內核依據Apache開源條款2.0中所規定的內容進行了修改,包括添加智慧型手機網路和電話協議棧等智慧型手機所必需的功能,使它們能更好的在移動設備上執行,並且根據第二版GNU條款中所規定的內容對修改的Linux內核資訊公佈。Google也不斷發布問卷和開放修改清單、更新情況和源代碼來讓任何人看到並且提出他們的意見和評論,以便按照用戶的要求改進Android作業系統。
Android作業系統是完全免費開源的,任何廠商都可以不經過Google和開放手持設備聯盟的授權隨意使用Android作業系統;但是製造商不能隨意地在自己的產品上使用Google的標誌和Google的應用程式,例如Google Play等。除非Google證明其生產的產品設備符合Google相容性定義檔案(CDD),這樣才能在智慧型手機上預裝Google Play Store、Gmail等應用程式,並且獲得CDD的智慧型手機廠商也可以在其生產的智慧型手機上印上「With Google」的標誌。
標簽
Android
HITMAN

5

主題

0

好友

5

積分

居民

2#
發表於 2012-8-10 06:45:56 |只看該作者
系統設計 : -

Linux內核

Android作業系統的內核屬於Linux內核的一個分支,具有典型的Linux週期和功能,除此之外,Google為了能讓Linux在移動設備上良好的執行,對其進行了修改和擴充。Android去除了Linux中的本地X Window System,也不支援標準的GNU庫,這使得Linux平台上的應用程式移植到Android平台上變得困難。2008年,Patrick Brady於Google I/O演講「Anatomy & Physiology of an Android」,並提出的Android HAL架構圖。HAL以*.so檔的形式存在,可以把Android framework與Linux kernel隔開,這種中介層的方式使得Android能在移動設備上獲得更高的執行效率。這種獨特的系統結構被Linux核心開發者Greg Kroah-Hartman和其他內核維護者稱讚。Google還在Android的內核中加入了自己開發製作的一個名為「wakelocks」的移動設備電源管理功能,該功能用於管理移動設備的電池效能,但是該功能並沒有被加入到Linux內核的主線開放和維護中,因為Linux內核維護者認為Google沒有向他們展示這個功能的意圖和代碼。
2010年2月3日,由於Google在Android內核開發方面和Linux社區方面開發的不同步,Linux核心開發者Greg Kroah-Hartman將Android的驅動程式從Linux核心「狀態樹」(「staging tree」)上除去。2010年4月,Google宣布將派遣2名開發人員加入Linux內核社區,以便重返Linux內核。2010年9月,Linux內核開發者Rafael J. Wysocki添加了一個修復程式,使得Android的「wakelocks」可以輕鬆地與主線Linux內核合併。2011年,Linus Torvalds說:「Android的內核和Linux的內核將最終回歸到一起,但可能不會是4-5年。」


特點

當前的Android作業系統具有以下幾個功能:

顯示佈局 -
Android作業系統支援更大的解析度,VGA,2D顯示,3D顯示都給予OpenGL ES 2.0標準規格,並且支援傳統的智慧型手機。

數據存儲 -
Android作業系統內SQLite型關聯式資料庫管理系統來負責存儲數據。
網路 - Android作業系統支援所有的網路制式,包括GSM/EDGEIDENCDMAEV-DOUMTSBluetoothWi-FiLTENFCWiMAX
資訊 -作為原設計給智慧型手機使用的作業系統,Android作業系統原生支援簡訊和郵件,並且支援所有的雲端資訊和服務器資訊。

語言 -
Android作業系統支援多語言。

瀏覽器 -
Android作業系統中內置的網頁瀏覽器基於WebKit內核,並且採用了Chrome V8引擎。在Android 4.0內置的瀏覽器測試中,HTML5Acid3故障處理中均獲得了滿分,並且於2.2版及之後能原生支援Flash

支援Java -
雖然Android作業系統中的應用程式大部分都是由Java編寫的,但是Android卻是以轉換為Dalvik executables的檔案Dalvik虛擬機執行的。由於Android中並不自帶Java虛擬機,因此無法直接執行Java程式。不過Android平台上提供了多個Java虛擬機供用戶下載使用,安裝了Java虛擬機的Android系統可以執行J2ME的程式。

媒體支援 -
Android作業系統本身支援以下格式的音訊/視訊/圖片媒體:WebM、H.263, H.264 (in 3GP or MP4 container)、MPEG-4 SP、AMR, AMR-WB (in 3GP container)、AAC, HE-AAC (in MP4 or 3GP container)、MP3、MIDI、Ogg Vorbis、FLAC、WAV、JPEG、PNG、GIF、BMP。如果用戶需要播放更多格式的媒體,可以安裝其他第三方應用程式。
流媒體支援 -Android作業系統支援RTP/RTSP(3GPP PSS, ISMA)的流媒體以及(HTML5 <video>)的流媒體,同時還支援Adobe的Flash,在安裝RealPlayer之後,還支援蘋果公司的流媒體。

硬體支援 -
Android作業系統支援識別並且使用視訊/照片攝像頭,多點電容/電阻觸摸屏,GPS,加速計,陀螺儀,氣壓計,磁強計,鍵盤,鼠標,USB Disk,專用的遊戲控制器,體感控制器,遊戲手柄,藍牙設備,無線設備,感應和壓力感測器,溫度計,加速2D位位塊傳輸(硬體方向,縮放,像素格式轉換)和3D圖形加速。

多點觸控 -
Android支援原生的多點觸摸,在最初HTC Hero智慧型手機上即有這個功能。該功能是核心級別(為了避免對蘋果公司的觸摸屏技術造成侵權)。

藍牙 -
Android支援A2DP,AVRCP,發送檔案(OPP),存取電話簿(PBAP),語音撥號和發送智慧型手機之間的聯繫。同時支援鍵盤,滑鼠和操縱桿(HID)。
多工處理 -Android作業系統支援原生的多工處理。

語音功能 -
除了支援普通的電話通話之外,Android作業系統從最初的版本開始就支援使用語音操作來使用Google進行網頁搜尋等功能。而從Android OS v2.2開始,語音功能還可以用來輸入文字、語音導航等功能。

無線共享功能 - Android作業系統支援用戶使用本機充當「無線路由器」,並且將本機的網路共享給其他智慧型手機,其他機器只需要通WiFi找到共享的無線熱點,就可以上網。而在Android OS v2.2版本之前的作業系統則需要通過第三方應用或者其他定製版系統來實現這個功能。

截圖功能 -
從Android OS v4.0版本開始,Android作業系統便支援截圖功能,該功能允許用戶直接抓取智慧型手機螢幕上的任何畫面,用戶還可以通過編輯功能對截圖進行處理,還可以通過藍牙/E-mail/微博/共享等方式發送給其他用戶或者上傳到網路上。

HITMAN
回覆

使用道具 舉報

5

主題

0

好友

5

積分

居民

3#
發表於 2012-8-10 07:03:13 |只看該作者
硬體支援

由於Android作業系統的開放性和可移植性,它可以被用在大部分電子產品上。包括:智慧型手機,上網本,平板電腦,個人電腦,筆記本電腦,電視,機頂盒,MP3播放器,MP4播放器,掌上遊戲機,家用主機,電子手錶,電子收音機,耳機,汽車設備,導航儀,CD機,VCD機,DVD機,機頂盒以及其他設備。
Android作業系統大多搭載在使用了ARM架構的硬體設備上。但是同樣也有支援X86架構的Android作業系統,比如Google的Google TV就是使用一個特別定製的X86架構版本的Android作業系統。
同樣,蘋果公司的iOS設備,比如iPhone、iPod Touch以及iPad產品都可以安裝Android作業系統,並且可以通過雙系統啟動工具OpeniBoot或者iDroid來執行Android作業系統。微軟的Windows Mobile、Windows Phone產品也一樣可以。另外Android亦已成功移植到搭載WebOS系統HP TouchPad以及搭載Meego系統的Nokia N9等裝置。
世界上第一部真正意義上使用Android作業系統的設備是2008年10月22日發布的HTC Dream
Android可以像用電腦上網一樣,使用任何服務。Android對手有蘋果公司iOS作業系統MicrosoftWindows Phone 7RIM使用的BlackBerry OS系統。



應用程式 :-

不同的軟體開發包,使用的編程語言也不同。
在早期的Android應用程式開發中,通常通過在Android SDK(Android軟體開發包)中使用Java作為編程語言來開發應用程式。開發者亦可以通過在Android NDK(Android Native開發包)中使用C語言或者C++語言來作為編程語言開發應用程式。同時Google還推出了適合初學者編程使用的Simple語言,該語言類似微軟公司的Visual Basic語言。此外,Google還推出了Google App Inventor開發工具,該開發工具可以快速地構建應用程式,方便新手開發者。

Google Play™


Google Play,前身為Android Market,目前沒有規範的中文名,中國大陸地區大多使用「電子市場」以及「Google市場」來稱呼,因Android Market的LOGO像菜市場用的袋子,所以部分中國使用者又稱之為「菜市場」。
2009年2月,Google推出Android Market線上應用程式商店,使用者可在該平台網頁尋找、購買、下載及評級使用智慧型手機應用程式及其他內容。第三方軟體開發商和自由開發者則可以通過Android Market發布其開發的應用程式。截止至2011年10月,Android Market上已有超過30萬個應用程式,並且在2011年12月,Android Market上的應用程式下載量超過100億次。同時,全球已有1億3千萬部Android設備在Android Market即現在的Google Play上下載過軟體。
只有通過Google許可並且認證的廠家才能在其產品設備上安裝Google服務框架和Google Play。同時受到部分地區和國家的政策影響,Google根據部分地區和國家的政策對Google Play上的內容進行了過濾,因此各地區和國家看到的內容不一樣。此外,受到部分地區和國家的電信運營商的影響,Google Play在部分地區和國家可能不可使用。
Google Play內的付費程式在許多國家與地區內提供,如美國英國瑞典德國斯里蘭卡泰國越南香港台灣等。由於受到Google結束中國事件影響,目前Google Play的服務還沒有擴展到中國大陸地區,但大陸用戶仍可通過國際信用卡和相關的免費軟體來完成購買。需要注意的是,通過這種方法購買的軟體可能不會得到當地承認的發票(Invoice)。
除了Google的Google Play之外,還有其他公司的應用程式市場,如亞馬遜公司的Amazon Appstore,它們都提供在線的APK程式的安裝和下載。



應用程式安全機制


Android作業系統使用了沙箱(sandbox)機制,所有的應用程式都會先被簡單地解壓縮到沙箱中進行檢查,並且將應用程式所需的權限送出給系統,並且將其所需權限以列表的形式展現出來,供用戶檢視。例如一個第三方瀏覽器需要「連接網路」的權限,或者一些軟體需要撥打電話,發送簡訊等權限。用戶可以根據權限來考慮自己是否需要安裝,用戶只有在同意了應用程式權限之後,才能進行安裝。



惡意程式與病毒 -

由於Android作業系統的開放和自由性,一些惡意程式和病毒也隨之出現。2010年8月,卡巴斯基病毒實驗室報告稱發現了Android作業系統上首個木馬程式,並將其命名為「Trojan-SMS.AndroidOS.FakePlayer.a」,這是一個通過簡訊方式感染智慧型手機的木馬,並且已經感染了一定數量的Android設備。除了簡訊感染方式,這些Android木馬還可以偽裝成一些主流的應用程式,並且還可以隱藏在一些正規的應用程式之中。
儘管Google通過定期的檢查撤除這些存在於 Google Play 上的惡意程式和病毒,但是這並不能完全阻止其他病毒通過第三方網路的方式產生並且傳播。
目前Android作業系統上已經擁有防病毒程式來防止設備中毒,例如 AvastF-SecureKasperskyTrend MicroSymantec 等防護軟體也已經發布了Android版本。


盜版問題 -

由於第三方市場流行,Android用戶大多不願意付費購買應用,轉而直接下載已被駭客破解的軟體檔,對應用開發者造成嚴重損失。有遊戲開發者針對其作品的調查指出,97%亞洲玩家、70%歐洲玩家及47%北美玩家都下載盜版。


SEAndroid -

美國國家安全域在2012年1月發布SEAndroid開源項目和程式碼,使Android系統支援強制存取控制(Mandatory Access Control)以增加系統安全性。





在中國大陸的特殊情況


因受到中國政府建立的防火長城作出網路審查影響,在中國大陸使用Google應用服務(包括Google Play)有時會出現無法連線的情況,需開啟VPN或破解Root權限後修改Hosts檔案。正因為這樣,不少人只能被迫使用第三方市場。
除此之外,在中國大陸售賣的裝有Android作業系統的行貨智慧型手機,幾乎所有廠商,包括摩托羅拉、三星、HTC等,均把Google服務包完全刪除,中國大陸使用者需要自行重新刷機或破解Root權限後刷寫Google服務包才能使用Google相關的應用服務。但裝有Android系統的水貨智慧型手機,譬如HTC並沒有在中國大陸正式發售過的HTC Legend等機型,則不受此影響。2012年5月4日傳出工業和資訊化部已對「Google」商標及應用進行限制:移動終端產品出廠不允許有Google字樣及相關應用,包括Google標識、應用,包括Google搜尋、Google書籤和Google瀏覽器等與有關的字樣,違者不進行任何行政審批。工信部後來否認此事。

HITMAN
回覆

使用道具 舉報

5

主題

0

好友

5

積分

居民

4#
發表於 2012-8-10 07:11:20 |只看該作者
HitmanJacky 發表於 2012-8-10 07:03
硬體支援

由於Android作業系統的開放性和可移植性,它可以被用在大部分電子產品上。包括:智慧型手機, ...

市場使用情況

市場佔有率

2009年第二季度,根據市場研究公司Canalys的數據顯示,Android佔據全球智慧型手機作業系統市場2.8%的份額,這個數字在2010年第四季度的全球份額中增長到了33%,Android作業系統也因此擊敗了諾基亞的Symbian系統成為了全球第一大智慧型手機作業系統。2012年5月,根據市場調查公司的數據顯示,Android作業系統在全球智慧型手機作業系統中的份額已經過半,達到了60%,全球有一半的智慧型手機使用Android作業系統。
2010年5月的數據顯示,Android作業系統在2010年第一季度的銷量超過了對手iOS平台,成為美國最大的智慧型手機作業系統。
根據本土市場研究公司ComScore的數據顯示,2009年11月時,Android在美國的智慧型手機作業系統市場的佔有率為5.2%,在2010年2月時,這個數字變成了9.0%,而在2010年第三季度末時,Android已經佔據了美國市場的21.4%的份額。截止至2011年6月,Google表示,每日通過Google服務器啟用的Android設備達到了55萬部,並且以每週4.4%的速度增長。2011年8月1日,Canalys的數據顯示,Android已佔據美國48%的智慧型手機市場佔有率。2011年10月13日,Google表示,全球市場上有1.9億部Android設備通過Google認證,而在2011年11月16日,全球市場上已有2億部Android設備通過Google認證。但是,搭載Android作業系統的平板電腦卻只有1.9%的份額,只有380萬Android蜂巢平板被賣出,遠遠低於蘋果公司的iPad的銷量。2012年6月,Google在2012 Google I/O大會上表示全球市場上有4億部Android設備被啟動,每天啟動一百萬台



使用者使用系統版本比例

截止至2012年8月2日,不同的Android作業系統版本的用戶比例。

ANDRIOD 01.jpg
HITMAN
回覆

使用道具 舉報

5

主題

0

好友

5

積分

居民

5#
發表於 2012-8-10 07:36:08 |只看該作者
HitmanJacky 發表於 2012-8-10 07:11
市場使用情況

市場佔有率

版本

Android作業系統曾有兩個內部版本,分別是原子小金剛(Astro)和發條機器人(Bender),在這兩個版本之後,Google為了避免商標問題,將Android作業系統的代號由機器人系列轉變為了現在的甜點系列。而目前Android系統以差不多每半年一次的步伐進行升級,比如1.5版叫做Cupcake(紙杯蛋糕)、1.6版為Donut(甜甜圈)、2.0/2.1版為Éclair(閃電泡芙,一種法式奶油夾心甜點)、2.2版為Froyo(凍酸奶)、2.3版為Gingerbread(薑餅)、3.0版為Honeycomb(蜂窩)、4.0版為Ice Cream Sandwich(冰淇淋三明治)及4.1版稱為Jelly Bean(雷根糖)。這些是以A、B、C、D、E、F、G、H、I、J字頭順序來排列的。Donut將把社群網路功能作為升級重點,在「智慧型手機的各種體驗中」都增加社群網路元素。
由於Android平台的高度開放和對軟體升級架構尚欠規範,導致Android產品往往因新版軟體的硬體要求過高,或致設備廠商無法保證對其產品提供最新版軟體更新,或致廠商拒絕支援而無法更新,令產品壽命週期大幅縮短及衍生俗稱「孤兒機」問題。


發佈

ANDRIOD 02.jpg

ANDRIOD 03.jpg

ANDRIOD 04.jpg

ANDRIOD 05.jpg

ANDRIOD 06.jpg

ANDRIOD 07.jpg

HITMAN
回覆

使用道具 舉報

5

主題

0

好友

5

積分

居民

6#
發表於 2012-8-10 07:39:36 |只看該作者
HitmanJacky 發表於 2012-8-10 07:36
版本

Android作業系統曾有兩個內部版本,分別是原子小金剛(Astro)和發條機器人(Bender),在這兩個版 ...

發佈

ANDRIOD 08.jpg

ANDRIOD 09.jpg
HITMAN
回覆

使用道具 舉報

5

主題

0

好友

5

積分

居民

7#
發表於 2012-8-10 07:49:21 |只看該作者
HitmanJacky 發表於 2012-8-10 07:39
發佈

系統架構

應用程式  

Android以Linux為核心的Android行動平台,使用Java作為程式語言,使介面到功能,都有層出不窮的變化,其中Activity等同於J2ME的MIDlet,一個Activity類別負責建立視窗,一個活動中的Activity就是在foreground(前景)模式,背景執行的程式叫做Service。兩者之間透過由ServiceConnection和AIDL連結,達到複數程式同時執行的效果。如果執行中的Activity全部畫面被其他Activity取代時,該Activity便被停止,甚至被系統清除。
View等同於J2ME的Displayable,程式人員可以透過View類別與「XML layout」檔將UI放置在視窗上,Android 1.5的版本可以利用View打造出所謂的Widgets,其實Widget只是View的一種,所以可以使用xml來設計layout,HTC的Android Hero智慧型手機即含有大量的widget。至於ViewGroup是各種layout的基礎抽象類別,ViewGroup之內還可以有ViewGroup。View的建構函式不需要在Activity中呼叫,但是Displayable的是必須的,在Activity中,要透過findViewById()來從XML中取得View,Android的View類的顯示很大程度上是從XML中讀取的。View與事件息息相關,兩者之間透過Listener結合在一起,每一個View都可以註冊一個event listener,例如:當View要處理使用者觸碰的事件時,就要向Android框架註冊View.OnClickListener。另外還有Image等同於J2ME的BitMap。


中介軟體

作業系統與應用程式的溝通橋樑,並用分為兩層:函式層和虛擬機器器Bionic是Android改良libc的版本。Android同時包含了Webkit,所謂的Webkit就是Google Chrome瀏覽器背後的引擎。Surface flinger是就2D或3D的內容顯示到螢幕上。Android使用工具鏈為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類別取得共用資料庫。
Android的中間層多以Java實作,並且採用特殊的Dalvik虛擬機器器。Dalvik虛擬機器器是一種「暫存器型態」的Java虛擬機器器,變數皆存放於暫存器中,虛擬機器器的指令相對減少。
Dalvik虛擬機器器可以有多個例項,每個Android應用程式都用一個自屬的Dalvik虛擬機器器來執行,讓系統在執行程式時可達到最佳化。Dalvik虛擬機器器並非執行Java位元組碼,而是執行一種稱為.dex格式的檔案。


硬體抽像層

Android的硬體抽像層是能以封閉源碼形式提供硬體驅動模組。HAL的目的是為了把Android framework與Linux kernel隔開,讓Android不至過度依賴Linux kernel,以達成kernel independent的概念,也讓Android framework的開發能在不考量驅動程式實作的前提下進行發展。
HAL stub是一種代理人的概念,stub是以*.so檔的形式存在。Stub向HAL「提供」操作函式,並由Android runtime向HAL取得stub的operations,再callback這些操作函式。HAL里包含了許多的stub(代理人)。Runtime只要說明「型別」,即module ID,就可以取得操作函式。


程式語言

Android是執行於Linux kernel之上,但並不是GNU/Linux。因為在一般GNU/Linux裏支援的功能,Android大都沒有支援,包括CairoX11AlsaFFmpegGTKPangoGlibc等都被移除掉了。Android又以bionic取代Glibc、以Skia取代Cairo、再以opencore取代FFmpeg等等。Android為了達到商業應用,必須移除被GNU GPL授權證所約束的部份,Android 並沒有 user space driver 這種東西。所有的Driver 還是在 Kernel space,並以 HAL 隔開版權問題。bionic/libc/kernel/ 並非標準的kernel header files。Android的kernel header是利用工具由Linux kernel header所產生的,這樣做是為了保留常數、資料結構與巨集。
Android的內核基於Linux,除了內核之外,則是中介層、資料庫元和用C/C++編寫的API以及應用程式框架。Android的應用程式通常以Java資料庫元為基礎編寫,執行程式時,應用程式的代碼會被即時轉變為Dalvik dex-code (Dalvik Executable),然後Android作業系統通過使用即時編譯的Dalvik虛擬機來將其執行。
目前Android的Linux kernel控制包括安全、記憶體管理行程管理網路堆疊驅動程式模型等。下載Android源碼之前,先要安裝其構建工具Repo來初始化源碼。Repo是Android用來輔助Git工作的一個工具。


專利糾紛

PC世界》雜誌網站2011年9月22日報導,Android已捲入1000多件專利訴訟。2011年8月,Google斥資125億美元收購摩托羅拉移動及其擁有的約2.45萬份專利組合





命名由來

Android一詞最早出現於法國作家利爾亞當(Auguste Villiers de l'Isle-Adam)在 1886 年發表的科幻小說《未來夏娃》(L'Ève future)中。他將外表像人的機器人取作 Android。




Android標誌


Android是一個全身綠色的機器人,顏色採用了PMS 376C和RGB中十六進制的#A4C639來繪製,這是Android作業系統的品牌象徵。有時候,它會以純文字的標誌展示。
Android的標誌是由 Ascender 公司設計的,其中的文字使用了Ascender公司專門製作的稱之為「Google Droid字型」的字型。
  
  

HITMAN
回覆

使用道具 舉報

您需要登錄後才可以發表回應 登錄 | 免費註冊

GMT+8, 2024-4-25 23:16

© 2015 SSKYN

回頂部