Android(谷歌Android)

Android(美國谷歌公司開發的移動作業系統)

谷歌Android一般指本詞條

本詞條是多義詞,共4個義項
更多義項 ▼ 收起列表 ▲

安卓(Android)是一種基於Linux核心(不包含GNU組件)的自由及開放原始碼的移動作業系統。主要套用於移動設備,如智慧型手機平板電腦,由美國Google公司和開放手機聯盟領導及開發。Android作業系統最初由安迪·魯賓開發,主要支持手機。2005年8月由Google收購注資。2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨後GoogleApache開源許可證的授權方式,發布了Android的原始碼。第一部Android智慧型手機發布於2008年10月。Android逐漸擴展到平板電腦及其他領域上,如電視、數位相機、遊戲機、智慧型手錶等。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。 2013年的第四季度,Android平台手機的全球市場份額已經達到78.1%。2013年09月24日谷歌開發的作業系統Android在迎來了5歲生日,全世界採用這款系統的設備數量已經達到10億台。

2022年5月12日,谷歌舉辦I/O 2022開發者大會,並正式發布Android 13

基本介紹

系統簡介,發展歷程,發行版本,測試版本,Android 1.0 Beta,Android 1.0,Android 1.5,Android 1.6,Android 2.1,Android 2.2,Android 2.3,Android 3.0,Android 3.1,Android 3.2,Android 4.0,Android 4.1,Android 4.2,Android 4.3,Android 4.4,Android 5.0,Android 5.1,Android 6.0,Android 7.0,Android 7.1,Android 8.0,Android 8.1,Android 9.0,Android 10,Android 11,Android 12,Android 13,Android 14,Android 15,體系架構,架構簡介,應用程式,應用程式框架,系統運行庫,系統結構,系統核心,硬體抽像層,中介軟體,安全許可權機制,套用組件,組件介紹,活動,服務,廣播接收器,內容提供,平台優勢,開放性,豐富的硬體,方便開發,Google套用,相關係統,相關報導,

系統簡介

Android一詞的本義指“機器人”,同時也是Google於2007年11月5日宣布的基於Linux平台的開源手機作業系統的名稱,該平台由作業系統中間件用戶界面套用軟體組成。
Android一詞最早出現於法國作家利爾亞當(Auguste Villiers de l'Isle-Adam)在1886年發表的科幻小說《未來的夏娃》(L'ève future)中。他將外表像人的機器起名為Android。
Android的Logo是由Ascender公司設計的,誕生於2010年,其設計靈感源於男女廁所門上的圖形符號,於是布洛克繪製了一個簡單的機器人,它的軀幹就像錫罐的形狀,頭上還有兩根天線,Android小機器人便誕生了。其中的文字使用了Ascender公司專門製作的稱之為“Droid ” 的字型。Android是一個全身綠色的機器人,綠色也是Android的標誌。顏色採用了PMS 376C和RGB中十六進制的#A4C639來繪製,這是Android作業系統的品牌象徵。有時候,它們還會使用純文字的Logo。
2012年7月美國科技部落格網站BusinessInsider評選出二十一世紀十款最重要電子產品,Android作業系統和iPhone等榜上有名。
(Android logo 相關圖片相冊圖片來源:)

發展歷程

2003年10月,安迪·魯賓, Rich Miner, Nick Sears和Chris White創建Android公司,並組建Android團隊。
2005年8月17日,Google低調收購了成立僅22個月的高科技企業Android及其團隊。安迪·魯賓成為Google公司工程部副總裁,繼續負責Android項目。
2007年11月5日,谷歌公司正式向外界展示了這款名為Android的作業系統,並且在這天谷歌宣布建立一個全球性的聯盟組織,該組織由34家手機製造商、軟體開發商電信運營商以及晶片製造商共同組成,並與84家硬體製造商、軟體開發商及電信營運商組成開放手持設備聯盟Open Handset Alliance)來共同研發改良Android系統,這一聯盟將支持谷歌發布的手機作業系統以及套用軟體,Google以Apache免費開源許可證的授權方式,發布了Android的原始碼
2008年,在GoogleI/O大會上,谷歌提出了AndroidHAL架構圖,在同年8月18號,Android獲得了美國聯邦通信委員會(FCC)的批准,在2008年9月,谷歌正式發布了Android 1.0系統,這也是Android系統最早的版本。
2009年4月,谷歌正式推出了Android 1.5這款手機,從Android 1.5版本開始,谷歌開始將Android的版本以甜品的名字命名,Android 1.5命名為Cupcake紙杯蛋糕)。該系統與Android 1.0相比有了很大的改進。
2009年9月,谷歌發布了Android 1.6正式版,並且推出了搭載Android 1.6正式版的手機HTC Hero(G3),憑藉著出色的外觀設計以及全新的Android 1.6作業系統,HTC Hero(G3)成為當時全球最受歡迎的手機。Android 1.6也有一個有趣的甜品名稱,它被稱為Donut(甜甜圈)。
2010年2月,Linux核心開發者Greg Kroah-Hartman將Android的驅動程式Linux核心“狀態樹”(“staging tree”)上除去,從此,Android與Linux開發主流將分道揚鑣。在同年5月份,谷歌正式發布了Android 2.2作業系統。谷歌將Android 2.2作業系統命名為Froyo,翻譯完名為凍優酪乳
2010年10月,谷歌宣布Android系統達到了第一個里程碑,即電子市場上獲得官方數字認證的Android套用數量已經達到了10萬個,Android系統的套用增長非常迅速。在2010年12月,谷歌正式發布了Android 2.3作業系統Gingerbread薑餅)。
2011年1月,谷歌稱每日的Android設備新用戶數量達到了30萬部,到2011年7月,這個數字增長到55萬部,而Android系統設備的用戶總數達到了1.35億,Android系統已經成為智慧型手機領域占有量最高的系統。
2011年8月2日,Android手機已占據全球智慧型機市場48%的份額,並在亞太地區市場占據統治地位,終結了Symbian(塞班系統)的霸主地位,躍居全球第一。
2011年9月,Android系統的套用數目已經達到了48萬,而在智慧型手機市場,Android系統的占有率已經達到了43%。繼續在排在移動作業系統首位。谷歌將會發布全新的Android 4.0作業系統,這款系統被谷歌命名為Ice Cream Sandwich冰激凌三明治)。
2012年1月6日,谷歌Android Market已有10萬開發者推出超過40萬活躍的套用,大多數的應用程式為免費。Android Market應用程式商店目錄在新年首周周末突破40萬基準,距離突破30萬套用僅4個月。在2011年早些時候,Android Market從20萬增加到30萬套用也花了四個月。
2013年11月1日,Android4.4正式發布,從具體功能上講,Android4.4提供了各種實用小功能,新的Android系統更智慧型,添加更多的Emoji表情圖案,UI的改進也更現代,如全新的HelloiOS7半透明效果。
2014第一季度Android平台已占所有移動廣告流量來源的42.8%,首度超越iOS。但運營收入不及iOS。
2015年,網路安全公司Zimperium研究人員警告,安卓(Android)存在“致命”安全漏洞,黑客傳送一封彩信便能在用戶毫不知情的情況下完全控制手機。
2018年10月,谷歌表示,將於2018年12月6日停止Android系統中的Nearby Notifications(附近通知)服務,因為Android用戶收到太多的附近商家推銷信息垃圾郵件
2020年3月,谷歌的Android安全公告中提到,新更新已經提供了CVE-2020-0069補丁來解決針對聯發科晶片的一個嚴重安全漏洞。
2022年2月,Android 12L Beta 3 版本發布,首次支持了 Pixel 6 和 Pixel 6 Pro,以及更新的測試環境、缺陷修復和最佳化。
2022年2月,谷歌宣布推出Android隱私沙盒,旨在引入更新、更具私密性的廣告解決方案,以限制與第三方機構共享用戶信息,但不損害廣告主短期利益。谷歌計畫在年內隨測試版一起發布隱私沙盒開發者預覽版
2022年3月27日訊息,據俄羅斯衛星通訊社報導,由於受到美國制裁,谷歌已經停止認證運行Android系統的俄羅斯BQ公司的智慧型手機,該公司將轉向使用中國華為公司打造的鴻蒙系統。
台北時間2022年5月6日下午訊息,據報導,5月5日是世界密碼日,蘋果谷歌微軟這三大科技巨頭在一項聯合計畫中宣布,他們將致力於在未來一年,在其控制的所有移動、桌面和瀏覽器平台上打造無密碼登錄系統。
2022年,安卓推出類似靈動島的App——dynamicSpot。10月3日訊息,安卓靈動島App下載量破100萬。10月13日,谷歌今天宣布安卓和 Chrome 瀏覽器帶來初步的 Passkey 通行密鑰支持。
2023年4月4日,谷歌發布 2023 年 4 月的安卓安全公告。谷歌和以往一樣,發布了兩個補丁級別,其中 2023-04-01 針對安卓系統和框架,而 2023-04-05 級別包含廠商的安全修復補丁。
2024年1月12日,谷歌於 2023 年 9 月宣布重塑安卓品牌,其中亮點之一在於綠色機器人圖示變為 3D 立體設計;在 CES 2024 大展上,谷歌將新版機器人命名為“The Bot”。

發行版本

測試版本

Android在正式發行之前,最開始擁有兩個內部測試版本,並且以著名的機器人名稱來對其進行命名,它們分別是:阿童木(Android 1.0 Beta),發條機器人(Android 1.0)。後來由於涉及到著作權問題,谷歌將其命名規則變更為用甜點作為它們系統版本的代號的命名方法。
Android(谷歌Android)
Android 各代版本 Logo
甜點命名法開始於Android 1.5發布的時候。作為每個版本代表的甜點的尺寸越變越大,按照字母順序:紙杯蛋糕(Cupcake,Android 1.5),甜甜圈(Donut,Android 1.6),鬆餅閃電泡芙)(Eclair,Android 2.0/2.1),凍優酪乳(Froyo,Android 2.2),薑餅(Gingerbread,Android 2.3),蜂巢HoneycombAndroid 3.0/3.1/3.2),冰激凌三明治(Ice Cream Sandwich,Android 4.0),果凍豆Jelly Bean,Android4.1/4.2/4.3),奇巧(KitKat,Android 4.4),棒棒糖(Lollipop,Android 5.0/5.1),棉花糖MarshmallowAndroid 6.0),牛軋糖(Nougat,Android 7.0/7.1),奧利奧(Oreo,Android 8.0/8.1),派(Pie,Android 9.0)。
從Android 10開始,Android不會再按照基於美味零食或甜點的字母順序命名,而是直接以版本號命名,就像Microsoft WindowsiOS一樣,但是內部開發代號仍為甜點名稱:Android 10(Quince Tart,榲桲果塔,Android Q),Android 11Red Velvet Cake,紅絲絨蛋糕,Android R),Android 12(Snow Cone,刨冰,Android S),Android 13(Tiramisu,提拉米蘇,Android T),Android 14(Upside Down Cake,翻轉蛋糕,Android U),Android 15(Vanilla Ice Cream,香草冰淇淋,Android V)。

Android 1.0 Beta

2007年發布的Android 阿童木。

Android 1.0

2008年9月,谷歌發布Android1.0。

Android 1.5

主詞條:Android 1.5
Cupcake(紙杯蛋糕):2009年4月30日發布。
主要的更新如下:
拍攝/播放影片,並支持上傳到Youtube;支持立體聲藍牙耳機,同時改善自動配對性能;最新的採用WebKit技術的瀏覽器,支持複製/貼上和頁面中搜尋;GPS性能大大提高;提供螢幕虛擬鍵盤;主螢幕增加音樂播放器和相框widgets;應用程式自動隨著手機旋轉;簡訊、Gmail日曆,瀏覽器的用戶接口大幅改進,如Gmail可以批量刪除郵件;相機啟動速度加快,拍攝圖片可以直接上傳到Picasa;來電照片顯示。

Android 1.6

主詞條:Android 1.6
Donut(甜甜圈):2009年9月15日發布。
主要的更新如下:
重新設計的Android Market手勢;支持CDMA網路;文字轉語音系統(Text-to-Speech);快速搜尋框;全新的拍照接口;查看應用程式耗電;支持虛擬私人網路VPN);支持更多的螢幕解析度;支持OpenCore2媒體引擎;新增面向視覺或聽覺困難人群的易用性外掛程式。

Android 2.1

主詞條:Android 2.1
Éclair(閃電泡芙):2009年10月26日發布。
主要更新:
最佳化硬體速度;"Car Home"程式;支持更多的螢幕解析度;改良的用戶界面;新的瀏覽器的用戶接口和支持HTML5;新的聯繫人名單;更好的白色/黑色背景比率;改進Google Maps3.1.2;支持Microsoft Exchange;支持內置相機閃光燈;支持數碼變焦;改進的虛擬鍵盤;支持藍牙2.1;支持動態桌面的設計。

Android 2.2

主詞條:Android 2.2
Froyo(凍優酪乳)2010年5月20日發布。
主要更新:
整體性能大幅度的提升;3G網路共享功能;Flash的支持;App2sd功能;全新的軟體商店;更多的Web套用API接口的開發。

Android 2.3

主詞條:Android 2.3
Gingerbread(薑餅) :2010年12月7日發布。
主要更新:
增加了新的垃圾回收和最佳化處理事件;原生代碼可直接存取輸入和感應器事件、EGL/OpenGLES、OpenSL ES;新的管理視窗和生命周期的框架;支持VP8WebM視頻格式,提供AACAMR寬頻編碼,提供了新的音頻效果器;支持前置攝像頭、SIP/VOIP和NFC近場通訊);簡化界面、速度提升;更快更直觀的文字輸入;一鍵文字選擇和複製/粘帖;改進的電源管理系統;新的套用管理方式

Android 3.0

主詞條:Android 3.0
Honeycomb(蜂巢):2011年2月3日發布。
主要更新:
針對平板大螢幕而做最佳化;全新設計的UI增強網頁瀏覽功能 ;in-app purchases功能。

Android 3.1

主詞條:Android 3.1
Honeycomb(蜂巢) :2011年5月11日布發布。
主要更新:
經過最佳化的Gmail電子信箱 ;全面支持Google Maps ;將Android手機系統跟平板系統再次合併從而方便開發者;任務管理器可滾動,支持USB輸入設備(鍵盤、滑鼠等) ;支持Google TV.可以支持XBOX 360無線手柄;widget支持的變化,能更加容易的定製螢幕widget外掛程式。

Android 3.2

主詞條:Android 3.2
Honeycomb(蜂巢):2011年7月13日發布。
主要更新:
支持SD卡;支持7英寸平板和高通處理器;桌面小部件自由縮放。

Android 4.0

主詞條:Android 4.0
Ice Cream Sandwich(冰激凌三明治):2011年10月19日上午十點,谷歌三星聯手在中國香港舉辦發布會,公布有關Android 4.0系統信息
版本主要更新如下:
全新的UI;全新的Chrome Lite瀏覽器,有離線閱讀,16標籤頁,隱身瀏覽模式等;截圖功能;更強大的圖片編輯功能;自帶照片套用堪比Instagram,可以加濾鏡、加相框,進行360度全景拍攝,照片還能根據地點來排序;Gmail加入手勢、離線搜尋功能,UI更強大;新功能People:以聯繫人照片為核心,界面偏重滑動而非點擊,集成了TwitterLinkedinGoogle+等通訊工具。有望支持用戶自定義添加第三方服務;新增流量管理工具,可具體查看每個套用產生的流量,限制使用流量,到達設定標準後自動斷開網路。

Android 4.1

主詞條:Android 4.1
Jelly Bean(果凍豆)2012年6月28日發布。
新特性:
更快、更流暢、更靈敏;特效動畫的幀速提高至60fps,增加了三倍緩衝;增強通知欄;全新搜尋;搜尋將會帶來全新的UI、智慧型語音搜尋Google Now三項新功能;桌面外掛程式自動調整大小;加強無障礙操作;語言和輸入法擴展;新的輸入類型和功能;新的連線類型。

Android 4.2

主詞條:Android 4.2
Android(谷歌Android)
Android 4.2 Jelly Bean 原生系統用戶界面
Jelly Bean(果凍豆)2012年10月30日發布。
Android 4.2沿用“果凍豆”這一名稱,以反映這種最新作業系統與Android 4.1的相似性,但Android 4.2推出了一些重大的新特性,具體如下:
Photo Sphere全景拍照功能;鍵盤手勢輸入功能;改進鎖屏功能,包括鎖屏狀態下支持桌面掛件和直接打開照相功能等;可擴展通知,允許用戶直接打開套用;Gmail郵件可縮放顯示;Daydream螢幕保護程式;用戶連點三次可放大整個顯示屏,還可用兩根手指進行旋轉和縮放顯示,以及專為盲人用戶設計的語音輸出和手勢模式導航功能等;支持Miracast無線顯示共享功能;Google Now現可允許用戶使用Gamail作為新的數據來源,如改進後的航班追蹤功能、酒店和餐廳預訂功能以及音樂和電影推薦功能等。

Android 4.3

主詞條:Android 4.3
Jelly Bean(果凍豆)2013年7月25日發布。

Android 4.4

主詞條:Android 4.4
KitKat(奇巧朱古力): 2013年下半年發布。
2013年9月4日凌晨,谷歌對外公布了Android新版本Android 4.4KitKat(奇巧朱古力),並且於2013年11月01日正式發布,新的4.4系統更加整合了自家服務,力求防止安卓系統繼續碎片化、分散化。

Android 5.0

主詞條:Android 5.0
Lollipop(棒棒糖):2014年6月26日發布。
Android 5.0 系統使用一種新的Material Design設計風格。從圖片上就能看到一些全新的設計。從圖片上看,這套設計圖對 Android 系統的桌面圖示及部件的透明度進行的稍稍的調整,並且各種桌面小部件也可以重疊擺放。雖然調整桌面部件透明度對 Android 系統來說並不算什麼新鮮的功能,但是加入了透明度的改進。界面加入了五彩繽紛的顏色、流暢的動畫效果,呈現出一種清新的風格。採用這種設計的目的在於統一 Android 設備的外觀和使用體驗,不論是手機、平板還是多媒體播放器

Android 5.1

主詞條:Android 5.1
Lollipop(棒棒糖):2015年3月10日發布。
Android 5.1新系統相對於Android5.0更加穩定了,同時支持多張SIM卡,加強了設備保護機制,增強了設備的WiFi能力。

Android 6.0

主詞條:Android 6.0
Marshmallow(棉花糖):2015年9月30日發布。
新系統的整體設計風格依然保持扁平化的Material Design風格。Android6.0在對軟體體驗與運行性能上進行了大幅度的最佳化。據測試,Android6.0可使設備續航時間提升30%。

Android 7.0

主詞條:Android 7.0
Nougat(牛軋糖):2016年8月22日發布。
Android 7.0 提供新功能以提升性能、生產效率和安全性。通過新的系統行為測試您的套用,以節省電量和記憶體。充分利用多視窗 UI、直接回復通知等功能。

Android 7.1

主詞條:Android 7.1
Nougat(牛軋糖):2016年12月5日發布。
更新為用戶和開發人員引入了各種新功能。
捷徑
您可以使用新的捷徑功能將用戶從啟動器直接帶入應用程式內的關鍵操作。用戶只需長按應用程式的啟動器圖示以顯示應用程式的捷徑,然後點擊捷徑即可跳至相關的操作。這些捷徑是吸引用戶的好方法,它們使您甚至在用戶啟動應用程式之前也可以展示應用程式的功能。
每個捷徑都引用一個意圖,每個意圖都會啟動一個特定的動作或任務,並且您可以為可以表示為意圖的任何動作創建一個捷徑。例如,您可以創建用於傳送新簡訊,進行預訂,播放視頻,繼續遊戲,載入地圖位置等等的意圖。
您可以通過將應用程式捷徑添加到APK中的資源檔案中來為其靜態創建捷徑,也可以在運行時動態添加它們。靜態捷徑是常見操作的理想選擇,動態捷徑使您可以根據用戶的偏好,行為,位置等突出顯示操作。每個應用程式中最多可以提供五個快捷鍵。但是請注意,某些啟動器應用程式不會顯示您為應用程式註冊的所有捷徑。
您的套用添加捷徑後,便可以在任何支持它們的啟動器上使用它們,例如Pixel啟動器(Pixel設備上的默認啟動器),Now啟動器(Nexus設備上的默認啟動器)以及其他提供支持的啟動器。
任何應用程式都可以創建捷徑,任何啟動器應用程式都可以添加對捷徑的支持。Android 7.1提供了一個API,供應用程式註冊捷徑和啟動程式讀取已註冊的捷徑。
Android(谷歌Android)
螢幕截圖
Android(谷歌Android)
7.1 螢幕截圖

Android 8.0

主詞條:Android 8.0
Android(谷歌Android)
Android 8.0 奧利奧
Oreo(奧利奧):2017年8月22日發布。
更智慧型、更快速、功能更強大。您喜愛的新 Android 版本以全球人都愛的一款曲奇餅為代號。
新功能:畫中畫 通知圓點 通知渠道 自動填充框架 自動調整 TextView 的大小 可下載字型 自適應圖示 捷徑固定 廣色域色彩 WebView 功能 Java 8 語言 API 媒體功能 多顯示器支持 Neural Networks API Android Oreo(Go 版本)

Android 8.1

Android 8.1 功能和 API
Android 8.1(API 級別 27)為用戶和開發者引入了各種新功能。
Android 8.1 Go是一項旨在為全球數十億網路用戶最佳化 Android 體驗的計畫。從 Android 8.1 開始,我們就在將 Android 打造成入門級設備的理想平台。Android Oreo(Go 版本)配置中的功能包括:
我們更新了“為數十億用戶打造產品”指南,加入了有關如何針對搭載 Android Oreo(Go 版本)的設備最佳化套用的指導。對於大多數開發者來說,最佳化現有的 APK,或使用 Google Play 的多 APK 功能將某個 APK 版本定位到低記憶體設備,是針對搭載 Android Oreo(Go 版本)的設備做好準備的最佳方式。請注意,無論您的客群使用何種設備,將套用打造得更加纖巧高效都對他們有益。

Android 9.0

主詞條:Android 9.0
Android(谷歌Android)
Android 9.0 Pie
Pie(派):2018年5月9日發布。
通知欄樣式更改,整體設計添加了更多圓形。
Android 9 利用人工智慧技術,讓手機可以為您提供更多幫助。現在,手機變得更智慧型、更快,並且還可以隨著您的使用進行調整。

Android 10

主詞條:Android 10
Android(谷歌Android)
Android 10
2019年9月4日發布。
從Android 10開始,Google 開始提供系統級黑暗模式,大部分預裝套用、抽屜、設定選單和 Google Feed 資訊流等界面和按鈕,都會變成以黑色為主色調,就和你在 macOS Mojave 中看到的暗色界面一樣。為確保用戶隱私和安全支持新的保護措施。藉助高性能編解碼器、更出色的生物識別技術、更快的套用啟動速度、Vulkan 1.1、NNAPI 1.2、可摺疊設備和 5G 等更多功能擴展。
谷歌宣布Android系統的重大改變,不僅換了全新的logo,命名方式也變了,2019年的Android Q的正式名稱是Android 10。

Android 11

主詞條:Android 11
Android(谷歌Android)
Android 11 LOGO
2020年9月9日發布。
2019年10月11日訊息,據外媒報導,2019年Android開發峰會將於本月晚些時候開幕,谷歌公布了完整的會議日程。在會議日程中谷歌官方首次提到了Android 11。
此前外媒發現在AOSP中,谷歌已經啟用了代號“Android R”。按照Android命名規則,Android R應該就是下一代Android:Android 11。
由於疫情原因,谷歌宣布取消線下的開發者大會,後來又取消了線上開發者大會,所以Android 11 將在2020年第三季度發布。
Android 11 開發者預覽版計畫從 2020 年 2 月啟動,到向 AOSP OEM 提供最終的公開版本時結束,最終版本預計將於 2020 年第 3 季度發布。在開發階段的各個關鍵里程碑,我們將為您的開發和測試環境提供更新。每次更新均包括 SDK 工具、系統映像模擬器API 參考和 API 差異。里程碑列表如下。
Android(谷歌Android)
官網發布時間軸
時間軸
Build
類型
開發者操作
2 月
開發者預覽版 1
早期的基準 build,涉及新功能、API 和行為變更,重點關注開發者反饋。
API 反饋的重要視窗。查看新的 API 和行為變更,並在此期間向我們報告任何重大問題或請求。
3 月
開發者預覽版 2
增量更新,涉及更多的功能、API 和行為變更。
在處理 API 和行為變更時,向我們提供反饋。開始早期的套用兼容性測試。
4 月
開發者預覽版 3
針對穩定性和性能的增量更新。
準備好套用,迎接消費者 Beta 版。繼續進行兼容性測試,在不更改目標的情況下發布更新。如有任何問題,通知 SDK 和庫的開發者。
5 月
Beta 版 1
初始 Beta 版本,面向註冊試用 Android Beta 版的嘗鮮者提供無線更新。
繼續進行兼容性測試,留意 Android Beta 版用戶的反饋。開始針對 Android 11 的早期測試。
6 月
Beta 版 2
平台穩定性里程碑,提供最終的 API 和行為。開放 Play 發布。
開始對套用、SDK 和庫進行最終的兼容性測試。發布兼容版本。繼續針對 Android 11 的工作。
第 3 季度
Beta 版 3
候選版本 build。
發布套用、SDK 和庫的兼容更新。繼續針對 Android 11 的工作。使用新功能和 API 構建套用。
第 3 季度
最終版本
面向 AOSP 和生態系統發布 Android 11 版本。
發布套用、SDK 和庫的兼容更新。繼續針對 Android 11 的工作。使用新功能和 API 構建套用。

Android 12

主詞條:Android 12
2021年10月5日發布。
2021年5月19日凌晨訊息,谷歌宣布Android 12正式到來,測試版現在即可供下載。

Android 13

主詞條:Android 13
2022年8月16日發布。
2022年2月11日,谷歌發布了首個Android 13開發者預覽版,將在6月發布穩定版。
2022年5月12日,谷歌舉辦I/O 2022開發者大會,並正式發布Android 13。
2022年8月16日,谷歌今日面向Pixel設備推送了 Android 13 正式版更新,並將原始碼上傳到了 Android 開源項目(AOSP)。

Android 14

主詞條:Android 14
2022年9月,谷歌平台與生態系統高級副總裁Hiroshi Lockheimer在社交平台上宣布了一則新訊息:Android 14將支持衛星通訊技術。

Android 15

2023年3月,爆料人Mishaal Rahman在AOSP中發現了Android 15的開發代號,即Vanilla Ice Cream(香草冰淇淋),甜美范兒。

體系架構

架構簡介

Android的系統架構和其作業系統一樣,採用了分層的架構。從架構圖看,Android分為四個層,從高層到低層分別是應用程式層、應用程式框架層、系統運行庫層和Linux核心層
Android(谷歌Android)
Android結構

應用程式

Android會同一系列核心應用程式包一起發布,該應用程式包包括客戶端,SMS短訊息程式,日曆,地圖,瀏覽器,聯繫人管理程式等。所有的應用程式都是使用JAVA語言編寫的。

應用程式框架

開發人員也可以完全訪問核心應用程式所使用的API框架。該應用程式的架構設計簡化了組件的重用;任何一個應用程式都可以發布它的功能塊並且任何其它的應用程式都可以使用其所發布的功能塊(不過得遵循框架的安全性)。同樣,該應用程式重用機制也使用戶可以方便的替換程式組件。
隱藏在每個套用後面的是一系列的服務和系統, 其中包括;
豐富而又可擴展的視圖(Views),可以用來構建應用程式, 它包括列表(Lists),格線(Grids),文本框(Text boxes),按鈕(Buttons), 甚至可嵌入的web瀏覽器。
內容提供器(Content Providers)使得應用程式可以訪問另一個應用程式的數據(如聯繫人資料庫), 或者共享它們自己的數據
資源管理器(Resource Manager)提供 非代碼資源的訪問,如本地字元串,圖形,和布局檔案(Layout files )。
通知管理器 (Notification Manager)使得應用程式可以在狀態欄中顯示自定義的提示信息。
活動管理器( Activity Manager)用來管理應用程式生命周期並提供常用的導航回退功能。

系統運行庫

Android 包含一些C/C++庫,這些庫能被Android系統中不同的組件使用。它們通過 Android 應用程式框架為開發者提供服務。以下是一些核心庫:
* 系統 C 庫 - 一個從BSD繼承來的標準C系統函式館 Libc , 它是專門為基於Embedded linux的設備定製的。
* 媒體庫 - 基於PacketVideo OpenCORE;該庫支持多種常用的音頻、視頻格式回放和錄製,同時支持靜態圖像檔案。編碼格式包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG
* Surface Manager - 對顯示子系統的管理,並且為多個應用程式提 供了2D3D圖層的無縫融合。
* LibWebCore - 一個最新的web瀏覽器引擎用,支持Android瀏覽器和一個可嵌入的web視圖。

系統結構

系統核心

Android 是運行於Linux kernel之上,但並不是GNU/Linux。因為在一般GNU/Linux 里支持的功能,Android 大都沒有支持,包括CairoX11AlsaFFmpegGTKPangoGlibc等都被移除掉了。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 Management),程式管理(Process Management),網路堆疊(Network Stack),驅動程式模型(Driver Model)等。下載Android源碼之前,先要安裝其構建工具 Repo來初始化源碼。Repo 是 Android 用來輔助Git工作的一個工具。

硬體抽像層

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,就可以取得操作函式。

中介軟體

作業系統與應用程式的溝通橋樑,套用分為兩層:函式層(Library)和虛擬機(Virtual Machine)。 Bionic是 Android 改良libc的版本。Android 同時包含了Webkit,所謂的Webkit 就是Apple Safari 瀏覽器背後的引擎。Surface flinger 是就2D或3D的內容顯示到螢幕上。Android使用工具鏈(Toolchain)為Google自製的Bionic Libc。
Android採用OpenCORE作為基礎多媒體框架。Open CORE可分7大塊:PVPlayer、PVAuthor、CodecPacketVideo 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本身是一個許可權分立的作業系統。在這類作業系統中,每個套用都以一個系統識別身份運行(Linux用戶ID與群組ID)。系統的各部分也分別使用各自獨立的識別方式。Linux就是這樣將套用與套用,套用與系統隔離開。
系統更多的安全功能通過許可權機制提供。許可權可以限制某個特定進程的特定操作,也可以限制每個URI許可權對特定數據段的訪問。
Android安全架構的核心設計思想是,在默認設定下,所有套用都沒有許可權對其他套用、系統或用戶進行較大影響的操作。這其中包括讀寫用戶隱私數據(聯繫人或電子郵件),讀寫其他套用檔案,訪問網路或阻止設備待機等。
安裝套用時,在檢查程式簽名提及的許可權,且經過用戶確認後,軟體包安裝器會給予套用許可權。從用戶角度看,一款Android套用通常會要求如下的許可權:
撥打電話、傳送簡訊或彩信、修改/刪除SD卡上的內容、讀取聯繫人的信息、讀取日程信的息,寫入日程數據、讀取電話狀態或識別碼、精確的(基於GPS地理位置、模糊的(基於網路獲取)地理位置、創建藍牙連線、對網際網路的完全訪問、查看網路狀態,查看WiFi狀態、避免手機待機、修改系統全局設定、讀取同步設定、開機自啟動、重啟其他套用、終止運行中的套用、設定偏好套用、震動控制、拍攝圖片等。
一款套用應該根據自身提供的功能,要求合理的許可權。用戶也可以分析一款套用所需許可權,從而簡單判定這款套用是否安全。如一款套用是不帶廣告的單機版,也沒有任何附加的內容需要下載,那么它要求訪問網路的許可權就比較可疑。

套用組件

組件介紹

Android開發四大組件分別是:活動(Activity): 用於表現功能。服務(Service): 後台運行服務,不提供界面呈現。廣播接收器(BroadcastReceiver):用於接收廣播。內容提供商Content Provider): 支持在多個套用中存儲和讀取數據,相當於資料庫。

活動

Android 中,Activity是所有程式的根本,所有程式的流程都運行在Activity 之中,Activity可以算是開發者遇到的最頻繁,也是Android 當中最基本的模組之一。在Android的程式當中,Activity 一般代表手機螢幕的一屏。如果把手機比作一個瀏覽器,那么Activity就相當於一個網頁。在Activity 當中可以添加一些Button、Check box 等控制項。可以看到Activity 概念和網頁的概念相當類似。
一般一個Android 套用是由多個Activity 組成的。這多個Activity 之間可以進行相互跳轉,例如,按下一個Button按鈕後,可能會跳轉到其他的Activity。和網頁跳轉稍微有些不一樣的是,Activity 之間的跳轉有可能返回值,例如,從Activity A 跳轉到Activity B,那么當Activity B 運行結束的時候,有可能會給Activity A 一個返回值。這樣做在很多時候是相當方便的。
當打開一個新的螢幕時,之前一個螢幕會被置為暫停狀態,並且壓入歷史堆疊中。用戶可以通過回退操作返回到以前打開過的螢幕。可以選擇性的移除一些沒有必要保留的螢幕,因為Android會把每個套用的開始到當前的每個螢幕保存在堆疊中。
(Android的套用圖冊圖片來源:)

服務

Service 是android 系統中的一種組件,它跟Activity 的級別差不多,但是他不能自己運行,只能後台運行,並且可以和其他組件進行互動。Service 是沒有界面的長生命周期的代碼。Service是一種程式,它可以運行很長時間,但是它卻沒有用戶界面。這么說有點枯燥,來看個例子。打開一個音樂播放器的程式,這個時候若想上網了,那么,打開Android瀏覽器,這個時候雖然已經進入了瀏覽器這個程式,但是,歌曲播放並沒有停止,而是在後台繼續一首接著一首的播放。其實這個播放就是由播放音樂的Service進行控制。當然這個播放音樂的Service也可以停止,例如,當播放列表裡邊的歌曲都結束,或者用戶按下了停止音樂播放的快捷鍵等。Service 可以在和多場合的套用中使用,比如播放多媒體的時候用戶啟動了其他Activity這個時候程式要在後台繼續播放,比如檢測SD 卡上檔案的變化,再或者在後台記錄地理信息位置的改變等等,總之服務嘛,總是藏在後頭的。
Android(谷歌Android)
安卓不同版本圖片
開啟Service有兩種方式:
(1) Context.startService():Service會經歷onCreate -> onStart(如果Service還沒有運行,則android先調用onCreate()然後調用onStart();如果Service已經運行,則只調用onStart(),所以一個Service的onStart方法可能會重複調用多次 );StopService的時候直接onDestroy,如果是調用者自己直接退出而沒有調用StopService的話,Service會一直在後台運行。該Service的調用者再啟動起來後可以通過stopService關閉Service。 注意,多次調用Context.startservice()不會嵌套(即使會有相應的onStart()方法被調用),所以無論同一個服務被啟動了多少次,一旦調用Context.stopService()或者StopSelf(),他都會被停止。補充說明:傳遞給StartService(0的Intent對象會傳遞給onStart()方法。調用順序為:onCreate --> onStart(可多次調用) --> onDestroy。
(2) Context.bindService():Service會經歷onCreate() -->onBind(),onBind將返回給客戶端一個IBind接口實例,IBind允許客戶端回調服務的方法,比如得到Service運行的狀態或其他操作。這個時候把調用者(Context,例如Activity)會和Service綁定在一起,Context退出了,Service就會調用onUnbind --> onDestroyed相應退出,所謂綁定在一起就共存亡了。

廣播接收器

在Android 中,Broadcast是一種廣泛運用的在應用程式之間傳輸信息的機制。而BroadcastReceiver 是對傳送出來的Broadcast進行過濾接受並回響的一類組件。可以使用BroadcastReceiver 來讓套用對一個外部的事件做出回響。這是非常有意思的,例如,當電話呼入這個外部事件到來的時候,可以利用BroadcastReceiver 進行處理。例如,當下載一個程式成功完成的時候,仍然可以利用BroadcastReceiver 進行處理。BroadcastReceiver不能生成UI,也就是說對於用戶來說不是透明的,用戶是看不到的。BroadcastReceiver通過NotificationManager 來通知用戶這些事情發生了。BroadcastReceiver 既可以在AndroidManifest.xml 中註冊,也可以在運行時的代碼中使用Context.registerReceiver進行註冊。只要是註冊了,當事件來臨的時候,即使程式沒有啟動,系統也在需要的時候啟動程式。各種套用還可以通過使用Context.sendBroadcast將它們自己的Intent Broadcasts廣播給其他應用程式。

內容提供

Content Provider 是Android提供的第三方套用數據的訪問方案。
在Android中,對數據的保護是很嚴密的,除了放在SD卡中的數據,一個套用所持有的資料庫、檔案等內容,都是不允許其他直接訪問的。Android當然不會真的把每個套用都做成一座孤島,它為所有套用都準備了一扇窗,這就是Content Provider。套用想對外提供的數據,可以通過派生Content Provider類, 封裝成一枚Content Provider,每個Content Provider都用一個uri作為獨立的標識,形如:content://com.xxxxx。所有東西看著像REST的樣子,但實際上,它比REST 更為靈活。和REST類似,uri也可以有兩種類型,一種是帶id的,另一種是列表的,但實現者不需要按照這個模式來做,給id的uri也可以返回列表類型的數據,只要調用者明白,就無妨,不用苛求所謂的REST。

平台優勢

開放性

在優勢方面,Android平台首先就是其開放性,開發的平台允許任何移動終端廠商加入到Android聯盟中來。顯著的開放性可以使其擁有更多的開發者,隨著用戶和套用的日益豐富,一個嶄新的平台也將很快走向成熟。
開放性對於Android的發展而言,有利於積累人氣,這裡的人氣包括消費者和廠商,而對於消費者來講,最大的受益正是豐富的軟體資源。開放的平台也會帶來更大競爭,如此一來,消費者將可以用更低的價位購得心儀的手機。同時也可以通過一些第三方最佳化過的系統通過刷機來實現更好的用戶體驗,如MIUIFlyme等。

豐富的硬體

這一點還是與Android平台的開放性相關,由於Android的開放性,眾多的廠商會推出千奇百怪,功能特色各具的多種產品。功能上的差異和特色,卻不會影響到數據同步、甚至軟體的兼容,如同從諾基亞Symbian風格手機一下改用蘋果iPhone,同時還可將Symbian中優秀的軟體帶到iPhone上使用、聯繫人等資料更是可以方便地轉移。

方便開發

Android平台提供給第三方開發商一個十分寬泛、自由的環境,不會受到各種條條框框的阻擾,可想而知,會有多少新穎別致的軟體會誕生。但也有其兩面性,血腥、暴力、情色方面的程式和遊戲如何控制正是留給Android難題之一。

Google套用

在網際網路的Google已經走過10年度歷史,從搜尋巨人到全面的網際網路滲透,Google服務如地圖、郵件、搜尋等已經成為連線用戶和網際網路的重要紐帶,而Android平台手機將無縫結合這些優秀的Google服務。

相關係統

Magic UI 6.0系統,首發於2022年1月,是Magic Live智慧引擎使能的人工智慧作業系統(搭載在榮耀Magic4系列上)

相關報導

2022年5月18日訊息,據 9to5 Google 報導,谷歌一直在尋求改善其移動作業系統的安全和隱私的普遍看法。谷歌最新推出了“Protected by Android”(受安卓保護)品牌,並且該品牌看起來已準備好進行更廣泛的推廣。

相關詞條

熱門詞條

聯絡我們