自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Android平臺(tái)簡(jiǎn)史及簡(jiǎn)介

移動(dòng)開(kāi)發(fā)
本文節(jié)選自IBMDW的Android開(kāi)發(fā)簡(jiǎn)介一文。在這篇文章中,作者介紹了Android平臺(tái)的簡(jiǎn)史,并簡(jiǎn)單介紹了Android應(yīng)用程序。

黑莓和 iPhone 都提供了受歡迎的、高容量的移動(dòng)平臺(tái),但是卻分別針對(duì)兩個(gè)不同的消費(fèi)群體。黑莓是企業(yè)業(yè)務(wù)用戶的不二選擇。但是,作為一種消費(fèi)設(shè)備,它在易用性和 “新奇特性” 方面難以和 iPhone 抗衡。Android 則是一個(gè)年輕的、有待開(kāi)發(fā)的平臺(tái),它有潛力同時(shí)涵蓋移動(dòng)電話的兩個(gè)不同消費(fèi)群體,甚至可能縮小工作和娛樂(lè)之間的差別

如今,很多基于網(wǎng)絡(luò)或有網(wǎng)絡(luò)支持的設(shè)備都運(yùn)行某種 Linux 內(nèi)核。這是一種可靠的平臺(tái):可經(jīng)濟(jì)有效地進(jìn)行部署和提供支持,并且可直接作為面向部署的良好的設(shè)計(jì)方法。這些設(shè)備的 UI 通常是基于 HTML 的,可通過(guò) PC 或 Mac 瀏覽器查看。但并不是每個(gè)設(shè)備都需要通過(guò)一個(gè)常規(guī)的計(jì)算設(shè)備來(lái)控制。想象一下傳統(tǒng)的家用電器,例如電爐、微波爐或面包機(jī)。如果您的家用電器由 Android 控制,并且有一個(gè)彩色觸摸屏,會(huì)怎么樣?如果電爐上有一個(gè) Android UI,那么操控者甚至可以烹飪點(diǎn)什么東西。

在本文中,了解 Android 平臺(tái),以及如何將它用于移動(dòng)和非移動(dòng)應(yīng)用程序。安裝 Android SDK,并構(gòu)建一個(gè)簡(jiǎn)單的應(yīng)用程序。

Android 簡(jiǎn)史

Android 平臺(tái)是 Open Handset Alliance 的成果,Open Handset Alliance 組織由一群共同致力于構(gòu)建更好的移動(dòng)電話的公司組成。這個(gè)組織由 Google 領(lǐng)導(dǎo),包括移動(dòng)運(yùn)營(yíng)商、手持設(shè)備制造商、零部件制造商、軟件解決方案和平臺(tái)提供商以及市場(chǎng)營(yíng)銷公司。從軟件開(kāi)發(fā)的觀點(diǎn)看,Android 正處在開(kāi)源領(lǐng)域的中心位置。

市場(chǎng)上第一款支持 Android 的手機(jī)是由 HTC 制造并由 T-Mobile 供應(yīng)的 G1。這款設(shè)備從設(shè)想到推出花了大約一年的時(shí)間,惟一可用的軟件開(kāi)發(fā)工具是一些實(shí)行增量改進(jìn)的 SDK 發(fā)行版。隨著 G1 發(fā)行日的臨近,Android 團(tuán)隊(duì)發(fā)布了 SDK V1.0,用于這個(gè)新平臺(tái)的應(yīng)用程序也浮出水面。

為了鼓勵(lì)創(chuàng)新,Google 舉辦了兩屆 “Android Developer Challenges”,為優(yōu)勝的參賽作品提供數(shù)百萬(wàn)美金的獎(jiǎng)勵(lì)。G1 問(wèn)世幾個(gè)月之后,隨后就發(fā)布了 Android Market,它使用戶可以瀏覽應(yīng)用程序,并且可以將應(yīng)用程序直接下載到他們的手機(jī)上。經(jīng)過(guò)大約 18 個(gè)月,一個(gè)新的移動(dòng)平臺(tái)進(jìn)入公眾領(lǐng)域。

Android 平臺(tái)

Android 有豐富的功能,因此很容易與桌面操作系統(tǒng)混淆。Android 是一個(gè)分層的環(huán)境,構(gòu)建在 Linux 內(nèi)核的基礎(chǔ)上,它包括豐富的功能。UI 子系統(tǒng)包括:

窗口

視圖

用于顯示一些常見(jiàn)組件(例如編輯框、列表和下拉列表)的小部件

Android 包括一個(gè)構(gòu)建在 WebKit 基礎(chǔ)上的可嵌入瀏覽器,iPhone 的 Mobile Safari 瀏覽器同樣也是以 WebKit 為基礎(chǔ)。

Android 提供多種連接選項(xiàng),包括 WiFi、藍(lán)牙和通過(guò)蜂窩(cellular)連接的無(wú)線數(shù)據(jù)傳輸(例如 GPRS、EDGE 和 3G)。Android 應(yīng)用程序中一項(xiàng)流行的技術(shù)是鏈接到 Google 地圖,以便在應(yīng)用程序中顯示地址。Android 軟件棧還提供對(duì)基于位置的服務(wù)(例如 GPS)和加速計(jì)的支持,不過(guò)并不是所有的 Android 設(shè)備都配備了必需的硬件。另外還有攝像支持。

過(guò)去,移動(dòng)應(yīng)用程序努力向桌面應(yīng)用程序看齊的兩個(gè)領(lǐng)域分別是圖形/媒體和數(shù)據(jù)存儲(chǔ)方法。Android 通過(guò)提供對(duì) 2D 和 3D 圖形的內(nèi)置支持,包括 OpenGL 庫(kù),解決了圖形方面的挑戰(zhàn)。由于 Android 平臺(tái)包括流行的開(kāi)源 SQLite 數(shù)據(jù)庫(kù),因此緩解了數(shù)據(jù)存儲(chǔ)的負(fù)擔(dān)。圖 1 顯示一個(gè)簡(jiǎn)化的 Android 軟件層次結(jié)構(gòu)。

Android 軟件層次結(jié)構(gòu)

圖 1. Android 軟件層次結(jié)構(gòu)

 

應(yīng)用程序架構(gòu)

如前所述,Android 運(yùn)行在 Linux 內(nèi)核上。Android 應(yīng)用程序是用 Java 編程語(yǔ)言編寫(xiě)的,它們?cè)谝粋€(gè)虛擬機(jī)(VM)中運(yùn)行。需要注意的是,這個(gè) VM 并非您想象中的 JVM,而是 Dalvik Virtual Machine,這是一種開(kāi)源技術(shù)。每個(gè) Android 應(yīng)用程序都在 Dalvik VM 的一個(gè)實(shí)例中運(yùn)行,這個(gè)實(shí)例駐留在一個(gè)由 Linux 內(nèi)核管理的進(jìn)程中,如下圖所示。

Dalvik VM

圖 2. Dalvik VM

Android 應(yīng)用程序由一個(gè)或多個(gè)組件組成:

活動(dòng)

具有可視 UI 的應(yīng)用程序是用活動(dòng)實(shí)現(xiàn)的。當(dāng)用戶從主屏幕或應(yīng)用程序啟動(dòng)器選擇一個(gè)應(yīng)用程序時(shí),就會(huì)開(kāi)始一個(gè)動(dòng)作。

服務(wù)

服務(wù)應(yīng)該用于任何需要持續(xù)較長(zhǎng)時(shí)間的應(yīng)用程序,例如網(wǎng)絡(luò)監(jiān)視器或更新檢查應(yīng)用程序。

內(nèi)容提供程序

可以將內(nèi)容提供程序看作數(shù)據(jù)庫(kù)服務(wù)器。內(nèi)容提供程序的任務(wù)是管理對(duì)持久數(shù)據(jù)的訪問(wèn),例如 SQLite 數(shù)據(jù)庫(kù)。如果應(yīng)用程序非常簡(jiǎn)單,那么可能不需要?jiǎng)?chuàng)建內(nèi)容提供程序。如果要構(gòu)建一個(gè)較大的應(yīng)用程序,或者構(gòu)建需要為多個(gè)活動(dòng)或應(yīng)用程序提供數(shù)據(jù)的應(yīng)用程序,那么可以使用內(nèi)容提供程序?qū)崿F(xiàn)數(shù)據(jù)訪問(wèn)。

廣播接收器

Android 應(yīng)用程序可用于處理一個(gè)數(shù)據(jù)元素,或者對(duì)一個(gè)事件(例如接收文本消息)做出響應(yīng)。

Android 應(yīng)用程序是連同一個(gè) AndroidManifest.xml 文件一起部署到設(shè)備的。AndroidManifest.xml 包含必要的配置信息,以便將它適當(dāng)?shù)匕惭b到設(shè)備。它包括必需的類名和應(yīng)用程序能夠處理的事件類型,以及運(yùn)行應(yīng)用程序所需的許可。例如,如果應(yīng)用程序需要訪問(wèn)網(wǎng)絡(luò) — 例如為了下載一個(gè)文件 — 那么 manifest 文件中必須顯式地列出該許可。很多應(yīng)用程序可能啟用了這個(gè)特定的許可。這種聲明式安全性有助于減少惡意應(yīng)用程序損害設(shè)備的可能性。

【編輯推薦】

  1. Android發(fā)展能進(jìn)入快車道嗎?
  2. Android將被應(yīng)用于MIPS架構(gòu)
  3. Android應(yīng)用程序模塊詳解
  4. 怎樣使用Eclipse來(lái)開(kāi)發(fā)Android源碼
  5. 開(kāi)發(fā)者眼中的Moblin和Android
責(zé)任編輯:yangsai 來(lái)源: IBMDW
相關(guān)推薦

2010-03-03 18:00:52

Android開(kāi)源平臺(tái)

2011-05-23 15:56:56

Android

2010-03-03 14:11:23

Android操作平臺(tái)

2011-08-31 09:52:55

MTKMT6235驅(qū)動(dòng)

2022-06-27 08:00:00

無(wú)代碼軟件編程程序員

2011-04-25 09:38:58

ERP

2011-12-13 14:30:54

2011-12-08 15:33:25

騰訊微博開(kāi)放平臺(tái)

2011-12-08 13:42:50

2011-12-08 14:52:35

360開(kāi)放平臺(tái)

2011-12-13 14:45:45

Facebook

2013-02-20 09:33:07

PythonWeb

2011-12-08 14:09:07

2009-06-30 14:08:00

Hibernate緩存

2012-11-08 11:14:04

2009-08-13 11:39:02

LINQ to Dat

2011-08-31 10:12:26

MTK手機(jī)平臺(tái)

2011-11-03 15:55:40

Windows Pho

2011-12-08 13:55:39

網(wǎng)易開(kāi)放平臺(tái)

2012-04-25 22:49:35

Android Mar
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)