第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開發(fā)者教程

Android 入門教程

菜單類控件
菜單:Menu
并發(fā)編程
多線程
首頁 慕課教程 Android 入門教程 Android 入門教程 Android 系統(tǒng)背景及結(jié)構(gòu)概述

Android 系統(tǒng)背景及結(jié)構(gòu)概述

谷歌 Android 系統(tǒng)

1. Android 的歷史

Android 一詞的本意指“人形機(jī)器人”,安迪?魯賓 (Andy Rubin) 在 2003 年以此名創(chuàng)辦了 Android 公司并開始召集團(tuán)隊(duì)研發(fā) Android 系統(tǒng)。后于 2005 年被 Google 收購,安迪?魯賓隨后任 Google 工程部副總裁,繼續(xù)負(fù)責(zé) Android 項(xiàng)目的研發(fā)工作。

安卓系統(tǒng)(Android)是一款基于 Linux 內(nèi)核的自由開源的操作系統(tǒng),主要使用于移動(dòng)設(shè)備,如智能手機(jī)和平板電腦。 Google 在 2007 年 11 月 5 日正式對外公布的了這款系統(tǒng),并以“綠色機(jī)器人”的形狀作為其 Logo。早期由 Google 開發(fā),后由開放手機(jī)聯(lián)盟(Open Handset Alliance)負(fù)責(zé)開發(fā)。

2. Android 的層級結(jié)構(gòu)

Android 從系統(tǒng)架構(gòu)上可分為四層結(jié)構(gòu),自下而上分別是:

  • Linux 內(nèi)核
  • 系統(tǒng)運(yùn)行庫
  • 應(yīng)用程序框架
  • 應(yīng)用程序

Android 架構(gòu)圖

2.1 Linux 內(nèi)核

這一層是 Android 的核心系統(tǒng)服務(wù),位于 Android 系統(tǒng)的最底層,直接與硬件設(shè)備交互。它依賴于 Linux,負(fù)責(zé)內(nèi)存管理、進(jìn)程管理、設(shè)備管理、網(wǎng)絡(luò)協(xié)議棧、安全性和驅(qū)動(dòng)模型等系統(tǒng)級服務(wù)。

Linux 內(nèi)核作為 Android 硬件和軟件之間的抽象層,為了更好的為 Android上層應(yīng)用服務(wù),Google 基于 Linux 做了一些的定制化的修改,具體的修改內(nèi)容及原因會在后續(xù)的教程中陸續(xù)提到。

2.2 系統(tǒng)運(yùn)行庫

這一層包含兩大塊:系統(tǒng)庫及 Android 運(yùn)行時(shí)。

  • 系統(tǒng)庫
    這一部分其實(shí)就是 C/C++ 庫,這些庫在 Android 系統(tǒng)中通常以 so 的形式供不同的組件使用,開發(fā)者可以通過自己的應(yīng)用程序使用這些庫提供的服務(wù)。

  • Android 運(yùn)行時(shí)
    Android 采用 Java 作為開發(fā)語言,在其運(yùn)行時(shí)中包含了 Java 核心庫的大多數(shù)功能,并使每一個(gè) Android 應(yīng)用程序都在它自己的進(jìn)程中運(yùn)行,都擁有一個(gè)獨(dú)立的 Dalvik 虛擬機(jī)實(shí)例。Dalvik 可以保證一個(gè)設(shè)備可以同時(shí)高效地運(yùn)行多個(gè)虛擬系統(tǒng)。

2.3 應(yīng)用程序框架

這一層是會和用戶直接打交道的一層,也是開發(fā)者最需要關(guān)注的一層。它包含了一系列的服務(wù)和系統(tǒng),其中包括:

  • 豐富而又可擴(kuò)展的視圖(Views)
  • 內(nèi)容提供器(Content Providers)
  • 資源管理器(Resource Manager)
  • 通知管理器(Notification Manager)
  • 活動(dòng)管理器(Activity Manager)

2.4 應(yīng)用程序

開發(fā)者的絕大部分工作都是在這一層完成,通過 Java 編寫的應(yīng)用程序我們可以使用 Android 系統(tǒng)提供的服務(wù)來實(shí)現(xiàn)我們預(yù)期的功能。

每一個(gè)應(yīng)用程序都對應(yīng)一個(gè) Dalvik 虛擬機(jī),利用跨平臺性質(zhì),基于 Android 框架開發(fā)的應(yīng)用程序可以運(yùn)行于任何一臺安裝有 Android 系統(tǒng)的平臺。

本教程的大多數(shù)內(nèi)容也是針對這一層,我們將帶領(lǐng)你建立屬于自己的第一個(gè) Android 應(yīng)用程序,并一步步由淺入深的學(xué)習(xí) Android 各個(gè)細(xì)枝末節(jié),讓你可以更好的掌握 Android 應(yīng)用程層序開發(fā)。

3. Android 各個(gè)版本、代號及 API 級別

從 Android 1.5 開始,Google 發(fā)型每一個(gè) Android 版本都用一個(gè)甜品的名稱作為代號,而代號首字母是從 C 開始以此按照字母順序排列,而直到 19 年發(fā)布的 Android Q 開始,Google 棄用了這一傳統(tǒng),改名為 Android 10。

名稱 版本號 API等級 發(fā)布時(shí)間 BuildVersion
Q 10.0 29 2019-09 BuildVersionCodes.Q
Pie 9.0 28 2018-08 BuildVersionCodes.P
Oreo 8.1 27 2017-12 BuildVersionCodes.OMr1
Oreo 8.0 26 2017-08 BuildVersionCodes.O
Nougat 7.1 25 2016-12 BuildVersionCodes.NMr1
Nougat 7.0 24 2016-08 BuildVersionCodes.N
Marshmallow 6.0 23 2015-08 BuildVersionCodes.M
Lollipop 5.1 22 2015-03 BuildVersionCodes.LollipopMr1
Lollipop 5.0 21 2014-11 BuildVersionCodes.Lollipop
Kitkat Watch 4.4W 20 2014-06 BuildVersionCodes.KitKatWatch
Kitkat 4.4 19 2013-10 BuildVersionCodes.KitKat
Jelly Bean 4.3 18 2013-07 BuildVersionCodes.JellyBeanMr2
Jelly Bean 4.2-4.2.2 17 2012-11 BuildVersionCodes.JellyBeanMr1
Jelly Bean 4.1-4.1.1 16 2012-06 BuildVersionCodes.JellyBean
Ice Cream Sandwich 4.0.3-4.0.4 15 2011-12 BuildVersionCodes.IceCreamSandwichMr1
Ice Cream Sandwich 4.0-4.0.2 14 2011-10 BuildVersionCodes.IceCreamSandwich
Honeycomb 3.2 13 2011-06 BuildVersionCodes.HoneyCombMr2
Honeycomb 3.1.x 12 2011-05 BuildVersionCodes.HoneyCombMr1
Honeycomb 3.0.x 11 2011-02 BuildVersionCodes.HoneyComb
Gingerbread 2.3.3-2.3.4 10 2011-02 BuildVersionCodes.GingerBreadMr1
Gingerbread 2.3-2.3.2 9 2010-11 BuildVersionCodes.GingerBread
Froyo 2.2.x 8 2010-06 BuildVersionCodes.Froyo
Eclair 2.1.x 7 2010-01 BuildVersionCodes.EclairMr1
Eclair 2.0.1 6 2009-12 BuildVersionCodes.Eclair01
Eclair 2.0 5 2009-11 BuildVersionCodes.Eclair
Donut 1.6 4 2009-09 BuildVersionCodes.Donut
Cupcake 1.5 3 2009-05 BuildVersionCodes.Cupcake
Base 1.1 2 2009-02 BuildVersionCodes.Base11
Base 1.0 1 2008-10 BuildVersionCodes.Base

4. 小結(jié)

本節(jié)對 Android 系統(tǒng)的背景及結(jié)構(gòu)做了一個(gè)簡單的講解,旨在讓大家有一個(gè)基本的認(rèn)識,如果感興趣的話可以查閱相關(guān)資料進(jìn)行深入了解。下一章我們將帶著大家完成開發(fā)環(huán)境的搭建,這也是進(jìn)入開發(fā)之前的必經(jīng)之路。