Android 簡介

歡迎你來到Android世界造成! Android系統(tǒng)是目前世界上市場占有率最高的移動操作系統(tǒng),不管你在哪里鸠踪,都可以看到Android手機幾乎無處不在缔莲。今天的
Android世界可謂欣欣向榮唱较,可是你知道它的過去是什么樣的嗎扎唾?我們一起來看一看它的發(fā)展史吧。2003年10月南缓,Andy Rubin等人一起創(chuàng)辦了 Android公司胸遇。2005年8月谷歌收購了這家僅僅成立了 22個月的公司汉形,并讓Andy Rubin繼續(xù)負責(zé)Android項目。在經(jīng)過了數(shù)年的研發(fā)之后收捣,谷歌終于在2008年推出了 Android系統(tǒng)的第一個版本楣颠。但自那之后童漩,Android的發(fā)展就一直受到重重阻撓差凹。喬布斯自始至終認為Android是一個抄襲iPhone的產(chǎn)品危尿,里面剽竊了諸多iPhone的創(chuàng)意,并聲稱一定要毀掉Androido而本身就是基于Linux開發(fā)的Android操作系統(tǒng)济欢,在2010年被Linux團隊從Linux內(nèi)核主線中除名。又由于Android中的應(yīng)用程序都是使用Java開發(fā)的半等,甲骨文則針對Android侵犯Java知識產(chǎn)權(quán)一事對谷歌提起了訴訟……

1 android 系統(tǒng)架構(gòu)

1. Linux內(nèi)核層

Android系統(tǒng)是基于Linux內(nèi)核的垛吗,這一層為Android設(shè)備的各種硬件提供了底層的驅(qū)動蔚舀,如顯示驅(qū)動赌躺、音頻驅(qū)動是钥、照相機驅(qū)動、藍牙驅(qū)動弹囚、wi-n驅(qū)動、電源管理等。

2. 系統(tǒng)運行庫層

這一層通過一些C/C++庫來為Android系統(tǒng)提供了主要的特性支持祝蝠。如SQLite庫提供了數(shù)據(jù)庫的支持,OpenGL|ES庫提供了 3D繪圖的支持儡嘶,Webkit庫提供了瀏覽器內(nèi)核的支持等。同樣在這一層還有Android運行時庫,它主要提供了一些核心庫摆屯,能夠允許開發(fā)者使用Java語言來編寫Android應(yīng)用准验。另外,Android運行時庫中還包含了 Dalvik虛擬機(5.0系統(tǒng)之后改為ART運行環(huán)境),它使得每一個Android應(yīng)用都能運行在獨立的進程當(dāng)中,并且擁有一個自己的Dalvik虛擬機實例。相較于Java虛擬機,Dalvik是專門為移動設(shè)備定制的,它針對手機內(nèi)存、CPU性能有限等情況做了優(yōu)化處理。

3. 應(yīng)用框架層

這一層主要提供了構(gòu)建應(yīng)用程序時可能用到的各種API, Android自帶的一些核心應(yīng)用就是使用這些API完成的诬乞,開發(fā)者也可以通過使用這些API來構(gòu)建自己的應(yīng)用程序震嫉。

4. 應(yīng)用層

所有安裝在手機上的應(yīng)用程序都是屬于這一層的森瘪,比如系統(tǒng)自帶的聯(lián)系人、短信等程序票堵,或者是你從Google Play上下載的小游戲扼睬,當(dāng)然還包括你自己開發(fā)的程序。


android 系統(tǒng)架構(gòu)圖

2 Android已發(fā)布的版本

2008年9月换衬,谷歌正式發(fā)布了 Android 1.0系統(tǒng)痰驱,這也是Android系統(tǒng)最早的版本证芭。隨后的幾年,谷歌以驚人的速度不斷地更新Android系統(tǒng)担映,2.1废士、2.2、2.3系統(tǒng)的推出使Android占據(jù)了大量的市場蝇完。2011年2月官硝,谷歌發(fā)布了 Android 3.0系統(tǒng),這個系統(tǒng)版本是專門為平板電腦設(shè)計的短蜕,但也是Android為數(shù)不多的比較失敗的版本氢架,推出之后一直不見什么起色,市場份額也少得可憐朋魔。不過很快岖研,在同年的10月,谷歌又發(fā)布了 Android4.0系統(tǒng)警检,這個版本不再對手機和平板
進行差異化區(qū)分孙援,既可以應(yīng)用在手機上,也可以應(yīng)用在平板上扇雕。2014年Google I/O大會上拓售,谷歌推出了號稱史上版本改動最大的Android 5.0系統(tǒng),其中使用ART運行環(huán)境替代了 Dalvik虛擬機镶奉,大大提升了應(yīng)用的運行速度础淤,還提出了 Material Design的概念來優(yōu)化應(yīng)用的界面設(shè)計。除此之外哨苛,還推出了 Android Wear A Android Auto. Android TV系統(tǒng)鸽凶,從而進軍可穿戴設(shè)備、汽車移国、電視等全新領(lǐng)域吱瘩。之后Android的更新速度更加迅速,2015年Google I/O大會上推出了 Android 6.0系統(tǒng)迹缀,加人運行時權(quán)限功能使碾,2016年Google I/O大會上推出了 Android 7.0系統(tǒng),加人多窗口模式功能祝懂,這也是目前最新的Android系統(tǒng)版本票摇。

Android版本名稱Code name Android版本 版本發(fā)布時間 對應(yīng)API
(no code name) 1.0 2008年9月23日 API level 1
(no code name) 1.1 2009年2月2日 API level 2
Cupcake 1.5 2009年4月17日 API level 3,NDK 1
Donut 1.6 2009年9月15日 API level 4,NDK 2
Eclair 2.0.1 2009年12月3日 API level 6
Eclair 2.1 2010年1月12日 API level 7,NDK3
Froyo 2.2.x 2010年1月12日 API level 8,NDK 4
Gingerbread 2.3 – 2.3.2 2011年1月1日 API level 9,NDK5
Gingerbread 2.3.3 – 2.3.7 2011年9月2日 API level 10
Honeycomb 3.0 2011年2月24日 API level 11
Honeycomb 3.1 2011年5月10日 API level 12,NDK 6
Honeycomb 3.2.x 2011年7月15日 API level 13
Ice Cream Sandwich 4.0.1 – 4.0.2 2011年10月19日 API level 14,NDK 7
Ice Cream Sandwich 4.0.3 – 4.0.4 2012年2月6日 API level 15,NDK 8
Jelly Bean 4.1 2012年6月28日 API level 16
Jelly Bean 4.1.1 2012年6月28日 API level 16
Jelly Bean 4.2-4.2.2 2012年11月 API level 17
Jelly Bean 4.3 2013年7月 API level 18
KitKat 4.4 2013年7月24日 API level 19
Kitkat Watch 4.4W 2014年6月 API level 20
Lollipop(Android L) 5.0/5.1 2014年6月25日 API level 21/API level 22
Marshmallow(Android M) 6.0 2015年5月28日 API level 23
Nougat(Android N) 7.0 2016年5月18日 API level 24
Nougat(Android N) 7.1 2016年12月 API level 25
Oreo(Android O) 8.0 2017年8月22日 API level 26
Oreo(Android O) 8.1 2017年12月5日 API level 27
Pie (Android P) 9.0 2018年8月7日 API level 28

3 Android應(yīng)用開發(fā)特色

  1. 四大組件
    Android系統(tǒng)四大組件分另是活動(Activity)、月艮務(wù)(Service).廣播接收器(Broadcast Receiver)和內(nèi)容提供器(Content Provider )o其中活動是所有Android應(yīng)用程序的門面砚蓬,凡是在應(yīng)用中你看得到的東西矢门,都是放在活動中的。而服務(wù)就比較低調(diào)了,你無法看到它祟剔,但它會一直在后臺默默地運行隔躲,即使用戶退出了應(yīng)用,服務(wù)仍然是可以繼續(xù)運行的物延。廣播接收器允許你的應(yīng)用接收來自各處的廣播消息宣旱,比如電話、短信等叛薯,當(dāng)然你的應(yīng)用同樣也可以向外發(fā)出廣播消息浑吟。內(nèi)容提供器則為應(yīng)用程序之間共享數(shù)據(jù)提供了可能,比如你想要讀取系統(tǒng)電話簿中的聯(lián)系人耗溜,就需要通過內(nèi)容提供器來實現(xiàn)组力。
  2. 豐富的系統(tǒng)控件
    Android系統(tǒng)為開發(fā)者提供了豐富的系統(tǒng)控件,使得我們可以很輕松地編寫出漂亮的界面抖拴。當(dāng)然如果你品位比較高燎字,不滿足于系統(tǒng)自帶的控件效果,也完全可以定制屬于自己的控件城舞。
  3. SQLite數(shù)據(jù)庫
    Android系統(tǒng)還自帶了這種輕量級轩触、運算速度極快的嵌人式關(guān)系型數(shù)據(jù)庫。它不僅支持標(biāo)準(zhǔn)的SQL語法家夺,還可以通過Android封裝好的API進行操作,讓存儲和讀取數(shù)據(jù)變得非常方便伐弹。
  4. 強大的多媒體
    Android系統(tǒng)還提供了豐富的多媒體服務(wù)拉馋,如音樂、視頻惨好、錄音煌茴、拍照、鬧鈴日川,等等蔓腐,這一切你都可以在程序中通過代碼進行控制,讓你的應(yīng)用變得更加豐富多彩龄句。
  5. 地理位置定位
    移動設(shè)備和PC相比起來回论,地理位置定位功能應(yīng)該可以算是很大的一個亮點。現(xiàn)在的Android手機都內(nèi)置有GPS,走到哪兒都可以定位到自己的位置分歇,發(fā)揮你的想象就可以做出創(chuàng)意十足的應(yīng)用傀蓉,如果再結(jié)合功能強大的地圖功能,LBS這一領(lǐng)域潛力無限职抡。

4 搭建開發(fā)環(huán)境

4.1 需要的開發(fā)工具

  • JDK葬燎。IDK是Java語言的軟件開發(fā)工具包,它包含了 Java的運行環(huán)境、工具集合谱净、基礎(chǔ)類庫等內(nèi)容窑邦。
  • Android SDK。Android SDK是谷歌提供的Android開發(fā)工具包壕探,在開發(fā)Android程序時冈钦,我們需要通過引人該工具包,來使用Android相關(guān)的API浩蓉。
  • Android Studio派继。在很早之前,Android項目都是用Eclipse來開發(fā)的捻艳,相信所有Java開發(fā)者都一定會對這個工具非常熟悉驾窟,它是Java開發(fā)神器,安裝ADT插件后就可以用來開發(fā)Android程序了认轨。而在2013年的時候绅络,谷歌推出了一款官方的IDE工具Android Studio,由于不再是以插件的形式存在,Android Studio在開發(fā)Android程序方面要遠比Eclipse強大和方便得多嘁字。

4.2 搭建開發(fā)環(huán)境

下載地址
studio 安裝教程
第一次使用Android Studio時你應(yīng)該知道的一切配置

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末恩急,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子纪蜒,更是在濱河造成了極大的恐慌衷恭,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,188評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件纯续,死亡現(xiàn)場離奇詭異随珠,居然都是意外死亡,警方通過查閱死者的電腦和手機猬错,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評論 3 395
  • 文/潘曉璐 我一進店門窗看,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人倦炒,你說我怎么就攤上這事显沈。” “怎么了逢唤?”我有些...
    開封第一講書人閱讀 165,562評論 0 356
  • 文/不壞的土叔 我叫張陵拉讯,是天一觀的道長。 經(jīng)常有香客問我智玻,道長遂唧,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,893評論 1 295
  • 正文 為了忘掉前任吊奢,我火速辦了婚禮盖彭,結(jié)果婚禮上纹烹,老公的妹妹穿的比我還像新娘。我一直安慰自己召边,他們只是感情好铺呵,可當(dāng)我...
    茶點故事閱讀 67,917評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著隧熙,像睡著了一般片挂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上贞盯,一...
    開封第一講書人閱讀 51,708評論 1 305
  • 那天音念,我揣著相機與錄音,去河邊找鬼躏敢。 笑死闷愤,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的件余。 我是一名探鬼主播讥脐,決...
    沈念sama閱讀 40,430評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼啼器!你這毒婦竟也來了旬渠?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,342評論 0 276
  • 序言:老撾萬榮一對情侶失蹤端壳,失蹤者是張志新(化名)和其女友劉穎告丢,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體损谦,經(jīng)...
    沈念sama閱讀 45,801評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡芋齿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,976評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了成翩。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,115評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡赦役,死狀恐怖麻敌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情掂摔,我是刑警寧澤术羔,帶...
    沈念sama閱讀 35,804評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站乙漓,受9級特大地震影響级历,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叭披,卻給世界環(huán)境...
    茶點故事閱讀 41,458評論 3 331
  • 文/蒙蒙 一寥殖、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦嚼贡、人聲如沸熏纯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,008評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽樟澜。三九已至,卻和暖如春叮盘,著一層夾襖步出監(jiān)牢的瞬間秩贰,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,135評論 1 272
  • 我被黑心中介騙來泰國打工柔吼, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留毒费,地道東北人。 一個月前我還...
    沈念sama閱讀 48,365評論 3 373
  • 正文 我出身青樓嚷堡,卻偏偏與公主長得像蝗罗,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蝌戒,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,055評論 2 355

推薦閱讀更多精彩內(nèi)容

  • 1.通訊制式的進化 手機的發(fā)展根據(jù)通信技術(shù)大致可以劃分為4個時代(G:Generation的縮寫): ?1G:最初...
    碼鍛閱讀 369評論 0 0
  • 本文主要是對Android系統(tǒng)做一個簡介串塑,包括其架構(gòu)、啟動流程北苟、沙箱機制桩匪、APK、Darlvik以及ART友鼻。 架構(gòu)...
    Q吹個大氣球Q閱讀 616評論 0 3
  • 引言: 從接觸Android學(xué)習(xí)到開發(fā)馬上就有3年了彩扔,講道理是不是也該算是一個熟練的碼農(nóng)了(啥時候能成大牛...
    半路自由閱讀 308評論 0 0
  • 第一部分目錄: 第一章 快速入門 安裝工具 再見Hello World 模擬器(或真機)運行 其他步驟 常用快捷鍵...
    Nathan_Chou閱讀 351評論 1 0
  • 阿木土閱讀 321評論 0 0