




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Android的教程之云計(jì)算和Android軟件堆棧簡介計(jì)算機(jī)4個(gè)主要部分Android教程之
架構(gòu)活動(dòng)功能單元目的功能單元服務(wù)功能單元安全模型單元Android教程之開發(fā)環(huán)境使用AndroidSDK開發(fā)人員資源云計(jì)算的思考:展望未來Android的教程之云計(jì)算和Android軟件堆棧簡介1簡介開源的Android操作系統(tǒng)已經(jīng)席卷全球,它允許您在任何位置運(yùn)行復(fù)雜的云計(jì)算應(yīng)用程序。它設(shè)計(jì)用于在電池供電設(shè)備(如T-MobileG1智能電話)上高效工作,Android本質(zhì)上就是Linux?,Android編程模型有多個(gè)層,允許創(chuàng)建為云計(jì)算量身定做的安全應(yīng)用程序。使用Android達(dá)到新的高度并體驗(yàn)前所未有的移動(dòng)計(jì)算吧。在一個(gè)充斥著蹩腳比喻的行業(yè),突然有人跳出來并抓住富有創(chuàng)造力的業(yè)務(wù)和IT人員的想象力,這一點(diǎn)也不奇怪。云計(jì)算就是這樣一種比喻,而且它已經(jīng)(請?jiān)试S我這樣說)席卷了全球。但云計(jì)算到底是指什么呢?簡介開源的Android操作系統(tǒng)已經(jīng)席卷全球,它允許您在2當(dāng)然,云是由許多水分子組成的,幾乎有幾億個(gè)。云沒有中央控制,基本上可以隨風(fēng)吹向各處。從這個(gè)角度來說,Internet中無數(shù)個(gè)具有各種用途的客戶機(jī)和服務(wù)器以及驅(qū)動(dòng)其發(fā)展的控制實(shí)體就像是云。將這一概念與手機(jī)公司帶給我們的無線數(shù)據(jù)革命結(jié)合后,我們似乎就處在一種無形的“云”計(jì)算力量中了。當(dāng)然,云是由許多水分子組成的,幾乎有幾億個(gè)。云沒有中央控制,3計(jì)算機(jī)4個(gè)主要部分自電子計(jì)算機(jī)誕生以來,就一直有人對計(jì)算機(jī)的4個(gè)主要功能部分進(jìn)行明確的劃分:提供人機(jī)接口的輸入/輸出(I/O)設(shè)備中央處理單元易失性隨機(jī)訪問存儲器(RAM)非易失性存儲器前三個(gè)部分將“計(jì)算”功能植于計(jì)算機(jī)中。第4部分通常存儲有價(jià)值的數(shù)據(jù)資產(chǎn),這一部分將隨著云計(jì)算的到來而發(fā)生翻天覆地的變化。有價(jià)值的數(shù)據(jù)駐留在非易失性存儲器中,以免因?yàn)閿嚯姸鴣G失—不管這種斷電是有意還是無意。非易失性存儲設(shè)備一般為硬盤,但也可以是安全數(shù)字(SD)卡之類的固態(tài)設(shè)備,甚至可以是磁帶設(shè)備(不過現(xiàn)在已經(jīng)過時(shí)了)。但是這些設(shè)備都有它們的局限性。計(jì)算機(jī)4個(gè)主要部分自電子計(jì)算機(jī)誕生以來,就一直有人對計(jì)算機(jī)4隨著時(shí)間的流逝,技術(shù)也在不斷進(jìn)步,出現(xiàn)了計(jì)算機(jī)網(wǎng)絡(luò),在計(jì)算機(jī)網(wǎng)絡(luò)上,企業(yè)中有價(jià)值的數(shù)據(jù)資產(chǎn)都集中在一臺由多個(gè)終端共享的計(jì)算機(jī)中,而且定期對這些數(shù)據(jù)進(jìn)行備份是一項(xiàng)基本的IT職能。這種模型(稱為大型機(jī)模型)提供了許多優(yōu)點(diǎn)—其中之一就是它減輕了每個(gè)終端位置的工作負(fù)載。僅具有一個(gè)微型終端(鍵盤、鼠標(biāo)、顯示器和PC)的小型辦公室可以訪問GB級的企業(yè)數(shù)據(jù),而無需提供大型機(jī)的處理能力—只要它們通過電纜連接在一起。下一個(gè)巨大的范式轉(zhuǎn)變來自于我們所熟知的Internet,在其中,龐大的計(jì)算機(jī)系統(tǒng)(本地網(wǎng)絡(luò))可以為位于全世界任何可以使用衛(wèi)星天線的位置的大量微型終端提供服務(wù)。這種配置的無線遠(yuǎn)程特點(diǎn)即被稱為云。隨后出現(xiàn)了個(gè)人數(shù)字助理(PDA)、移動(dòng)電話和智能手機(jī),計(jì)算機(jī)的微型化已經(jīng)發(fā)展到我們熟知的并非常喜愛的手持形式。一夜之間,智能終端已經(jīng)成為無數(shù)高生產(chǎn)力人員的工具,它們以驚人的速度生成和消費(fèi)著信息。隨著時(shí)間的流逝,技術(shù)也在不斷進(jìn)步,出現(xiàn)了計(jì)算機(jī)網(wǎng)絡(luò),在計(jì)算機(jī)5在20世紀(jì)90年代中期和末期,電子郵件和萬維網(wǎng)(WorldWideWeb)是主導(dǎo)云的最流行應(yīng)用程序。大多數(shù)人都使用Web瀏覽器與云進(jìn)行交互并認(rèn)識到Internet是一種比較簡單的應(yīng)用。隨著Yahoo!和Google在商業(yè)方面的成功,TB級服務(wù)器和網(wǎng)絡(luò)連接取代本地硬盤成為首選的非易失性存儲設(shè)備。就像許多具有超前思維的預(yù)見者所預(yù)言的那樣,云已經(jīng)成為了一種像水、電話和電那樣不可缺少的現(xiàn)代實(shí)用工具。通過將移動(dòng)電話數(shù)字網(wǎng)絡(luò)作為主要的Internet服務(wù)提供商(InternetServiceProvider,ISP),云已經(jīng)發(fā)展為使用幾百萬個(gè)微型手持設(shè)備作為顯示服務(wù)器數(shù)據(jù)的主要工具。就像云到處移動(dòng)和隨風(fēng)變化那樣,這些微型手持設(shè)備的操作模式也是如此—終端變得越來越小,功能越來越強(qiáng),可移植性增強(qiáng)了許多,服務(wù)器的功能也越加強(qiáng)大,通過軟件虛擬化并根據(jù)使用收費(fèi),能更好地滿足用戶的數(shù)據(jù)需求。公司不再需要維護(hù)大型而昂貴的服務(wù)器“集群”,現(xiàn)在有另一種成本更低的方法:通過Google、Amazon和IBM?之類的供應(yīng)商實(shí)現(xiàn)服務(wù)外包。通過虛擬化,以前在定制環(huán)境中運(yùn)行的應(yīng)用程序現(xiàn)在可以被復(fù)制或“映像化”,從而在供應(yīng)商服務(wù)器的云中運(yùn)行。通過恰當(dāng)?shù)貙@些服務(wù)計(jì)費(fèi),公司就不需要在服務(wù)空閑期間支付高額費(fèi)用。在20世紀(jì)90年代中期和末期,電子郵件和萬維網(wǎng)(Wo6在硬件技術(shù)不斷進(jìn)步的同時(shí),軟件技術(shù)也在不斷發(fā)展,并且我們看到出現(xiàn)了很多新的應(yīng)用程序。例如,基于位置的服務(wù)可確定接近手機(jī)訊號接收塔的企業(yè)、內(nèi)置全球定位系統(tǒng)(GPS)可以確定您的位置。出現(xiàn)了下載和測試有用程序和數(shù)據(jù)文件的新市場,比如用于購買和下載音樂的AndroidMarket和AmazonMP3Market。毫無疑問,這些獨(dú)特的新的云計(jì)算應(yīng)用程序?qū)⑦M(jìn)一步發(fā)展—例如,公司可以分類和選擇區(qū)域聯(lián)系人信息,然后在區(qū)域銷售人員休息時(shí)自動(dòng)將當(dāng)天的促銷電話列表發(fā)送到他們的基于Android的手機(jī)中。云計(jì)算將可移植設(shè)備與強(qiáng)大的服務(wù)器互為補(bǔ)充,它需要一個(gè)能夠讓服務(wù)器架構(gòu)師和程序員最大程度利用小型客戶機(jī)機(jī)器的操作系統(tǒng)。Android就是這樣一種操作系統(tǒng)。在硬件技術(shù)不斷進(jìn)步的同時(shí),軟件技術(shù)也在不斷發(fā)展,并且我們看到7Android教程之Android架構(gòu)首先,Android是一個(gè)用于移動(dòng)設(shè)備的軟件堆棧。這意味著優(yōu)先級最高的事是保持電池電量和有效地管理有限的內(nèi)存資源。Android系統(tǒng)堆棧有5個(gè)不同的層:AcornRISCMachine(ARM)Linux內(nèi)核構(gòu)成了所有其他層所依賴的堅(jiān)實(shí)基礎(chǔ)。Linux被證明是一種高可靠性的技術(shù),而ARM處理器以能在非常低的電源需求下發(fā)揮高性能而著稱。
庫提供可重用的和可共享的低級代碼,用于基本函數(shù),如codecs(用于編碼和解碼數(shù)字音頻與視頻的軟件),以及用于在小的顯示器上表示豐富圖形的函數(shù)、支持在云中加密TCP/IP流量的安全shell,以及支持Web瀏覽(WebKit)的組件、SQL數(shù)據(jù)庫功能(SQLite)和可以在Linux系統(tǒng)中使用的標(biāo)準(zhǔn)C庫功能。Android教程之Android架構(gòu)首先,Android8Dalvik運(yùn)行時(shí)字節(jié)碼解釋程序非常類似于Java?語言的字節(jié)碼解釋程序,它添加了幾個(gè)獨(dú)特的特性,使用獨(dú)特的方式定義了Android的安全和電力保持模型。例如,當(dāng)前運(yùn)行的每個(gè)應(yīng)用程序都運(yùn)行自己的用戶ID和解釋程序副本以嚴(yán)格區(qū)分進(jìn)程,從而實(shí)現(xiàn)安全性和可靠性。Android應(yīng)用程序框架允許您使用和替換您認(rèn)為適合的組件。這些高級Java類與定義AndroidAPI的組件緊密集成在一起。Android核心應(yīng)用程序包括WebKit瀏覽器、Google日歷、Gmail、Maps應(yīng)用程序、SMSmessenger和一個(gè)標(biāo)準(zhǔn)的電子郵件客戶機(jī)等等。Android應(yīng)用程序是用Java編程語言編寫的,您可以隨時(shí)從Android市場下載更多的Android應(yīng)用程序。每個(gè)Android應(yīng)用程序可以被進(jìn)一步劃分為不同的功能單元:活動(dòng)(Activities)目的(Intents)服務(wù)(Services)安全模型(Securitymodel)Dalvik運(yùn)行時(shí)字節(jié)碼解釋程序非常類似于Java?語9活動(dòng)功能單元活動(dòng)是Android應(yīng)用程序的一個(gè)組件,它擴(kuò)展Activity基類并定義一個(gè)由響應(yīng)事件的視圖(View)組成的接口。如果一個(gè)應(yīng)用程序由3個(gè)窗口(例如,一個(gè)登錄窗口、一個(gè)文本查看窗口和一個(gè)文件查看窗口)組成,那么每一個(gè)窗口通常用一個(gè)不同的Activity類來表示。Android維護(hù)每個(gè)從主頁中運(yùn)行的應(yīng)用程序的歷史堆棧,您可以單擊Back
按鈕回滾這些活動(dòng)的歷史?;顒?dòng)功能單元活動(dòng)是Android應(yīng)用程序的一個(gè)組件,它10目的活動(dòng)單元目的與活動(dòng)一樣,是應(yīng)用程序代碼中的一個(gè)特殊類,定義應(yīng)用程序要做的事情。目的添加了一個(gè)間接層來支持復(fù)雜組件的重用和替換。例如,某個(gè)應(yīng)用程序可能提供了一個(gè)標(biāo)簽為Clients
的按鈕,單擊該按鈕時(shí),會(huì)顯示一個(gè)聯(lián)系人列表,上面都是您的客戶。然后就要使用間接層了:您不需要對這些聯(lián)系人使用默認(rèn)查看器;相反,可以使用一種不同的查看器。對某些應(yīng)用程序而言,這可能是一個(gè)非常強(qiáng)大的應(yīng)用程序集成功能。對于特殊的顯示,使用地形圖或許要比使用默認(rèn)地圖的效果更好。諸如BroadcastReceiver這樣的類定義的代碼將在外部事件觸發(fā)它們時(shí)執(zhí)行。定時(shí)器鳴叫或手機(jī)來電等事件可以以這種方式進(jìn)行監(jiān)視。通常,這類代碼不顯示窗口,但可以使用NotificationManager類來提醒用戶需要注意某事。目的活動(dòng)單元目的與活動(dòng)一樣,是應(yīng)用程序代碼中的一個(gè)特殊類,11服務(wù)活動(dòng)單元服務(wù)是在較低級別運(yùn)行的一個(gè)應(yīng)用程序,沒有顯示,也沒有UI。它通常是一個(gè)會(huì)在幕后運(yùn)行很長時(shí)間的應(yīng)用程序。一個(gè)很好的例子就是播放歌曲列表的媒體播放器程序。盡管媒體播放應(yīng)用程序會(huì)顯示一個(gè)UI來允許用戶定義他們的播放列表,但是程序?qū)嶋H上是讓服務(wù)來控制給定播放列表中的歌曲播放。服務(wù)活動(dòng)單元服務(wù)是在較低級別運(yùn)行的一個(gè)應(yīng)用程序,沒有顯示,12安全模型單元Android的安全模型只允許程序有自己的數(shù)據(jù)。如果程序員想在幾個(gè)不同程序之間共享數(shù)據(jù),他們可以為此定義內(nèi)容提供者。vider包定義一些允許應(yīng)用程序讀取大量內(nèi)置Android數(shù)據(jù)庫的類和接口。聯(lián)系人、照片和歌曲等信息可以通過這些接口在不同應(yīng)用程序之間輕松共享。永遠(yuǎn)不要低估開放源代碼的強(qiáng)大威力,就像不能低估自由的、有創(chuàng)造性的人們的能力一樣。Android平臺不受專用API和經(jīng)常影響軟件工程進(jìn)度的公司利益的束縛,它擁有一個(gè)非?;钴S的大型開發(fā)人員社區(qū),將許多人的才能結(jié)合起來確實(shí)實(shí)現(xiàn)了一加一大于二的效果。想拓展您的編程職業(yè)生涯嗎?那就學(xué)習(xí)Android平臺編程吧,而且某一天,您將擁有包含幾百萬名移動(dòng)電話用戶的潛在市場—其中一些人可能需要使用您的程序。Android的核心是ARMLinux。單憑這一點(diǎn)就可以對此平臺的迅速發(fā)展抱有極大信心。Linux是一?快速且安全的操作系統(tǒng),有成千上萬名的程序員對它都很熟悉。許多基于Linux的系統(tǒng)被連接到云中并服務(wù)請求,它們可以正常運(yùn)行好多年—這充分證明了linux的可靠性。安全模型單元Android的安全模型只允許程序有自己的數(shù)據(jù)13開發(fā)環(huán)境:Eclipse、Windows、Linux考慮Android開發(fā)環(huán)境時(shí),程序員們有多種選擇。他們可以使用Microsoft?Windows?XP或WindowsVista?、MacintoshOSX(V10.4.8或更高版本,僅x86)、DesktopLinux(首選Ubuntu)。這些常用的操作系統(tǒng)都有可下載的軟件開發(fā)工具包(SDK)。您可以使用Eclipse或SunMicrosystems的NetBeans之類的GUIIDE,也可以使用命令行方法和標(biāo)準(zhǔn)編輯器,您可以任意選擇。Android社區(qū)鼓勵(lì)相互交流,創(chuàng)建Android的公司也是如此,這些公司有Google、HTC、T-Mobile和開放手機(jī)聯(lián)盟項(xiàng)目(OpenHandsetAllianceProject)的其他成員。開放的真正含義就是開放人們(程序員、用戶、銷售人員等)之間的交流、開放協(xié)議和開放編程API。借助各種軟件許可,組織也可以在Android上放置專用程序和數(shù)據(jù)。這不僅可以讓組織不會(huì)脫離平臺,而且也不會(huì)限制消費(fèi)者的選擇。這是一種雙贏的組合。開發(fā)環(huán)境:Eclipse、Windows、Linux考慮A14開始使用AndroidSDK任何對開發(fā)Android感興趣的人所要做的第一件事就是下載并安裝AndroidSDK(請參閱參考資料)。然后開始準(zhǔn)備編程。每個(gè)人的編程方式都不盡相同。一些人(包括我在內(nèi))喜歡在學(xué)習(xí)完所有內(nèi)容后再開始編碼。其他一些人則喜歡立即開始并練習(xí)完整Android文檔給出的教程示例。但不管您喜歡什么樣的方式,最終必須編寫一些代碼。在開始之前,請看一下Android針對經(jīng)典的HelloWorld程序給出的編碼(請參閱參考資料,查看“HelloAndroid”示例應(yīng)用程序)。開始使用AndroidSDK任何對開發(fā)Android15開發(fā)人員資源云中有大量的資源可用于Android開發(fā),包括幾個(gè)wiki和Android社區(qū)論壇,以及多個(gè)Android編程blog。推出Android的主要公司Google實(shí)際上是一個(gè)通信公司,因此提供了幾個(gè)有用的論壇(稱為GoogleGroups),供擁有不同技能集和才能的開發(fā)人員進(jìn)行交流。部分中的Android鏈接并沒有展示出Android領(lǐng)域的博大。云計(jì)算(特別是Android)目前是非常熱門的現(xiàn)象。開發(fā)人員資源云中有大量的資源可用于Android開發(fā),包16關(guān)于云計(jì)算的思考:展望未來IBM正致力于在ResearchTrianglePark,N.C.和東京創(chuàng)建兩個(gè)大型云計(jì)算中心。要了解為您的定制云計(jì)算應(yīng)用程序提供動(dòng)力的服務(wù),只需要訪問中央Web站點(diǎn)并探究IBM所做的相應(yīng)工作。您可以編寫應(yīng)用程序來利用云,云中的備份和恢復(fù)設(shè)施都是自動(dòng)化的,經(jīng)驗(yàn)豐富的工程師可以使您的構(gòu)想變?yōu)楝F(xiàn)實(shí)。將Android手機(jī)想像成IBM集體式計(jì)算功能的一項(xiàng)擴(kuò)展。當(dāng)坐在咖啡店里細(xì)細(xì)酌飲時(shí),您希望在手機(jī)上看到什么呢?現(xiàn)金流量圖?還是呈上漲趨勢的證券數(shù)據(jù)和圖形?可能是來自NASA的最新圖片,您昨天晚上曾在一個(gè)速度非常快的并行處理服務(wù)器上使用定制過濾程序進(jìn)行過處理?可能是直接來自國家地震信息中心(NationalEarthquakeInformationCenter)的最新地震數(shù)據(jù),或者僅僅是昨晚誰贏了NBA冠軍杯。數(shù)據(jù)“是現(xiàn)成的”,處理能力也是:您只需要實(shí)現(xiàn)它。時(shí)間會(huì)告訴我們未來將會(huì)創(chuàng)造出怎樣的創(chuàng)新性云計(jì)算應(yīng)用程序,那時(shí)每個(gè)人都將站在巨人們的肩膀上。關(guān)于云計(jì)算的思考:展望未來IBM正致力于在Researc17Android的教程之云計(jì)算和Android軟件堆棧簡介計(jì)算機(jī)4個(gè)主要部分Android教程之
架構(gòu)活動(dòng)功能單元目的功能單元服務(wù)功能單元安全模型單元Android教程之開發(fā)環(huán)境使用AndroidSDK開發(fā)人員資源云計(jì)算的思考:展望未來Android的教程之云計(jì)算和Android軟件堆棧簡介18簡介開源的Android操作系統(tǒng)已經(jīng)席卷全球,它允許您在任何位置運(yùn)行復(fù)雜的云計(jì)算應(yīng)用程序。它設(shè)計(jì)用于在電池供電設(shè)備(如T-MobileG1智能電話)上高效工作,Android本質(zhì)上就是Linux?,Android編程模型有多個(gè)層,允許創(chuàng)建為云計(jì)算量身定做的安全應(yīng)用程序。使用Android達(dá)到新的高度并體驗(yàn)前所未有的移動(dòng)計(jì)算吧。在一個(gè)充斥著蹩腳比喻的行業(yè),突然有人跳出來并抓住富有創(chuàng)造力的業(yè)務(wù)和IT人員的想象力,這一點(diǎn)也不奇怪。云計(jì)算就是這樣一種比喻,而且它已經(jīng)(請?jiān)试S我這樣說)席卷了全球。但云計(jì)算到底是指什么呢?簡介開源的Android操作系統(tǒng)已經(jīng)席卷全球,它允許您在19當(dāng)然,云是由許多水分子組成的,幾乎有幾億個(gè)。云沒有中央控制,基本上可以隨風(fēng)吹向各處。從這個(gè)角度來說,Internet中無數(shù)個(gè)具有各種用途的客戶機(jī)和服務(wù)器以及驅(qū)動(dòng)其發(fā)展的控制實(shí)體就像是云。將這一概念與手機(jī)公司帶給我們的無線數(shù)據(jù)革命結(jié)合后,我們似乎就處在一種無形的“云”計(jì)算力量中了。當(dāng)然,云是由許多水分子組成的,幾乎有幾億個(gè)。云沒有中央控制,20計(jì)算機(jī)4個(gè)主要部分自電子計(jì)算機(jī)誕生以來,就一直有人對計(jì)算機(jī)的4個(gè)主要功能部分進(jìn)行明確的劃分:提供人機(jī)接口的輸入/輸出(I/O)設(shè)備中央處理單元易失性隨機(jī)訪問存儲器(RAM)非易失性存儲器前三個(gè)部分將“計(jì)算”功能植于計(jì)算機(jī)中。第4部分通常存儲有價(jià)值的數(shù)據(jù)資產(chǎn),這一部分將隨著云計(jì)算的到來而發(fā)生翻天覆地的變化。有價(jià)值的數(shù)據(jù)駐留在非易失性存儲器中,以免因?yàn)閿嚯姸鴣G失—不管這種斷電是有意還是無意。非易失性存儲設(shè)備一般為硬盤,但也可以是安全數(shù)字(SD)卡之類的固態(tài)設(shè)備,甚至可以是磁帶設(shè)備(不過現(xiàn)在已經(jīng)過時(shí)了)。但是這些設(shè)備都有它們的局限性。計(jì)算機(jī)4個(gè)主要部分自電子計(jì)算機(jī)誕生以來,就一直有人對計(jì)算機(jī)21隨著時(shí)間的流逝,技術(shù)也在不斷進(jìn)步,出現(xiàn)了計(jì)算機(jī)網(wǎng)絡(luò),在計(jì)算機(jī)網(wǎng)絡(luò)上,企業(yè)中有價(jià)值的數(shù)據(jù)資產(chǎn)都集中在一臺由多個(gè)終端共享的計(jì)算機(jī)中,而且定期對這些數(shù)據(jù)進(jìn)行備份是一項(xiàng)基本的IT職能。這種模型(稱為大型機(jī)模型)提供了許多優(yōu)點(diǎn)—其中之一就是它減輕了每個(gè)終端位置的工作負(fù)載。僅具有一個(gè)微型終端(鍵盤、鼠標(biāo)、顯示器和PC)的小型辦公室可以訪問GB級的企業(yè)數(shù)據(jù),而無需提供大型機(jī)的處理能力—只要它們通過電纜連接在一起。下一個(gè)巨大的范式轉(zhuǎn)變來自于我們所熟知的Internet,在其中,龐大的計(jì)算機(jī)系統(tǒng)(本地網(wǎng)絡(luò))可以為位于全世界任何可以使用衛(wèi)星天線的位置的大量微型終端提供服務(wù)。這種配置的無線遠(yuǎn)程特點(diǎn)即被稱為云。隨后出現(xiàn)了個(gè)人數(shù)字助理(PDA)、移動(dòng)電話和智能手機(jī),計(jì)算機(jī)的微型化已經(jīng)發(fā)展到我們熟知的并非常喜愛的手持形式。一夜之間,智能終端已經(jīng)成為無數(shù)高生產(chǎn)力人員的工具,它們以驚人的速度生成和消費(fèi)著信息。隨著時(shí)間的流逝,技術(shù)也在不斷進(jìn)步,出現(xiàn)了計(jì)算機(jī)網(wǎng)絡(luò),在計(jì)算機(jī)22在20世紀(jì)90年代中期和末期,電子郵件和萬維網(wǎng)(WorldWideWeb)是主導(dǎo)云的最流行應(yīng)用程序。大多數(shù)人都使用Web瀏覽器與云進(jìn)行交互并認(rèn)識到Internet是一種比較簡單的應(yīng)用。隨著Yahoo!和Google在商業(yè)方面的成功,TB級服務(wù)器和網(wǎng)絡(luò)連接取代本地硬盤成為首選的非易失性存儲設(shè)備。就像許多具有超前思維的預(yù)見者所預(yù)言的那樣,云已經(jīng)成為了一種像水、電話和電那樣不可缺少的現(xiàn)代實(shí)用工具。通過將移動(dòng)電話數(shù)字網(wǎng)絡(luò)作為主要的Internet服務(wù)提供商(InternetServiceProvider,ISP),云已經(jīng)發(fā)展為使用幾百萬個(gè)微型手持設(shè)備作為顯示服務(wù)器數(shù)據(jù)的主要工具。就像云到處移動(dòng)和隨風(fēng)變化那樣,這些微型手持設(shè)備的操作模式也是如此—終端變得越來越小,功能越來越強(qiáng),可移植性增強(qiáng)了許多,服務(wù)器的功能也越加強(qiáng)大,通過軟件虛擬化并根據(jù)使用收費(fèi),能更好地滿足用戶的數(shù)據(jù)需求。公司不再需要維護(hù)大型而昂貴的服務(wù)器“集群”,現(xiàn)在有另一種成本更低的方法:通過Google、Amazon和IBM?之類的供應(yīng)商實(shí)現(xiàn)服務(wù)外包。通過虛擬化,以前在定制環(huán)境中運(yùn)行的應(yīng)用程序現(xiàn)在可以被復(fù)制或“映像化”,從而在供應(yīng)商服務(wù)器的云中運(yùn)行。通過恰當(dāng)?shù)貙@些服務(wù)計(jì)費(fèi),公司就不需要在服務(wù)空閑期間支付高額費(fèi)用。在20世紀(jì)90年代中期和末期,電子郵件和萬維網(wǎng)(Wo23在硬件技術(shù)不斷進(jìn)步的同時(shí),軟件技術(shù)也在不斷發(fā)展,并且我們看到出現(xiàn)了很多新的應(yīng)用程序。例如,基于位置的服務(wù)可確定接近手機(jī)訊號接收塔的企業(yè)、內(nèi)置全球定位系統(tǒng)(GPS)可以確定您的位置。出現(xiàn)了下載和測試有用程序和數(shù)據(jù)文件的新市場,比如用于購買和下載音樂的AndroidMarket和AmazonMP3Market。毫無疑問,這些獨(dú)特的新的云計(jì)算應(yīng)用程序?qū)⑦M(jìn)一步發(fā)展—例如,公司可以分類和選擇區(qū)域聯(lián)系人信息,然后在區(qū)域銷售人員休息時(shí)自動(dòng)將當(dāng)天的促銷電話列表發(fā)送到他們的基于Android的手機(jī)中。云計(jì)算將可移植設(shè)備與強(qiáng)大的服務(wù)器互為補(bǔ)充,它需要一個(gè)能夠讓服務(wù)器架構(gòu)師和程序員最大程度利用小型客戶機(jī)機(jī)器的操作系統(tǒng)。Android就是這樣一種操作系統(tǒng)。在硬件技術(shù)不斷進(jìn)步的同時(shí),軟件技術(shù)也在不斷發(fā)展,并且我們看到24Android教程之Android架構(gòu)首先,Android是一個(gè)用于移動(dòng)設(shè)備的軟件堆棧。這意味著優(yōu)先級最高的事是保持電池電量和有效地管理有限的內(nèi)存資源。Android系統(tǒng)堆棧有5個(gè)不同的層:AcornRISCMachine(ARM)Linux內(nèi)核構(gòu)成了所有其他層所依賴的堅(jiān)實(shí)基礎(chǔ)。Linux被證明是一種高可靠性的技術(shù),而ARM處理器以能在非常低的電源需求下發(fā)揮高性能而著稱。
庫提供可重用的和可共享的低級代碼,用于基本函數(shù),如codecs(用于編碼和解碼數(shù)字音頻與視頻的軟件),以及用于在小的顯示器上表示豐富圖形的函數(shù)、支持在云中加密TCP/IP流量的安全shell,以及支持Web瀏覽(WebKit)的組件、SQL數(shù)據(jù)庫功能(SQLite)和可以在Linux系統(tǒng)中使用的標(biāo)準(zhǔn)C庫功能。Android教程之Android架構(gòu)首先,Android25Dalvik運(yùn)行時(shí)字節(jié)碼解釋程序非常類似于Java?語言的字節(jié)碼解釋程序,它添加了幾個(gè)獨(dú)特的特性,使用獨(dú)特的方式定義了Android的安全和電力保持模型。例如,當(dāng)前運(yùn)行的每個(gè)應(yīng)用程序都運(yùn)行自己的用戶ID和解釋程序副本以嚴(yán)格區(qū)分進(jìn)程,從而實(shí)現(xiàn)安全性和可靠性。Android應(yīng)用程序框架允許您使用和替換您認(rèn)為適合的組件。這些高級Java類與定義AndroidAPI的組件緊密集成在一起。Android核心應(yīng)用程序包括WebKit瀏覽器、Google日歷、Gmail、Maps應(yīng)用程序、SMSmessenger和一個(gè)標(biāo)準(zhǔn)的電子郵件客戶機(jī)等等。Android應(yīng)用程序是用Java編程語言編寫的,您可以隨時(shí)從Android市場下載更多的Android應(yīng)用程序。每個(gè)Android應(yīng)用程序可以被進(jìn)一步劃分為不同的功能單元:活動(dòng)(Activities)目的(Intents)服務(wù)(Services)安全模型(Securitymodel)Dalvik運(yùn)行時(shí)字節(jié)碼解釋程序非常類似于Java?語26活動(dòng)功能單元活動(dòng)是Android應(yīng)用程序的一個(gè)組件,它擴(kuò)展Activity基類并定義一個(gè)由響應(yīng)事件的視圖(View)組成的接口。如果一個(gè)應(yīng)用程序由3個(gè)窗口(例如,一個(gè)登錄窗口、一個(gè)文本查看窗口和一個(gè)文件查看窗口)組成,那么每一個(gè)窗口通常用一個(gè)不同的Activity類來表示。Android維護(hù)每個(gè)從主頁中運(yùn)行的應(yīng)用程序的歷史堆棧,您可以單擊Back
按鈕回滾這些活動(dòng)的歷史?;顒?dòng)功能單元活動(dòng)是Android應(yīng)用程序的一個(gè)組件,它27目的活動(dòng)單元目的與活動(dòng)一樣,是應(yīng)用程序代碼中的一個(gè)特殊類,定義應(yīng)用程序要做的事情。目的添加了一個(gè)間接層來支持復(fù)雜組件的重用和替換。例如,某個(gè)應(yīng)用程序可能提供了一個(gè)標(biāo)簽為Clients
的按鈕,單擊該按鈕時(shí),會(huì)顯示一個(gè)聯(lián)系人列表,上面都是您的客戶。然后就要使用間接層了:您不需要對這些聯(lián)系人使用默認(rèn)查看器;相反,可以使用一種不同的查看器。對某些應(yīng)用程序而言,這可能是一個(gè)非常強(qiáng)大的應(yīng)用程序集成功能。對于特殊的顯示,使用地形圖或許要比使用默認(rèn)地圖的效果更好。諸如BroadcastReceiver這樣的類定義的代碼將在外部事件觸發(fā)它們時(shí)執(zhí)行。定時(shí)器鳴叫或手機(jī)來電等事件可以以這種方式進(jìn)行監(jiān)視。通常,這類代碼不顯示窗口,但可以使用NotificationManager類來提醒用戶需要注意某事。目的活動(dòng)單元目的與活動(dòng)一樣,是應(yīng)用程序代碼中的一個(gè)特殊類,28服務(wù)活動(dòng)單元服務(wù)是在較低級別運(yùn)行的一個(gè)應(yīng)用程序,沒有顯示,也沒有UI。它通常是一個(gè)會(huì)在幕后運(yùn)行很長時(shí)間的應(yīng)用程序。一個(gè)很好的例子就是播放歌曲列表的媒體播放器程序。盡管媒體播放應(yīng)用程序會(huì)顯示一個(gè)UI來允許用戶定義他們的播放列表,但是程序?qū)嶋H上是讓服務(wù)來控制給定播放列表中的歌曲播放。服務(wù)活動(dòng)單元服務(wù)是在較低級別運(yùn)行的一個(gè)應(yīng)用程序,沒有顯示,29安全模型單元Android的安全模型只允許程序有自己的數(shù)據(jù)。如果程序員想在幾個(gè)不同程序之間共享數(shù)據(jù),他們可以為此定義內(nèi)容提供者。vider包定義一些允許應(yīng)用程序讀取大量內(nèi)置Android數(shù)據(jù)庫的類和接口。聯(lián)系人、照片和歌曲等信息可以通過這些接口在不同應(yīng)用程序之間輕松共享。永遠(yuǎn)不要低估開放源代碼的強(qiáng)大威力,就像不能低估自由的、有創(chuàng)造性的人們的能力一樣。Android平臺不受專用API和經(jīng)常影響軟件工程進(jìn)度的公司利益的束縛,它擁有一個(gè)非?;钴S的大型開發(fā)人員社區(qū),將許多人的才能結(jié)合起來確實(shí)實(shí)現(xiàn)了一加一大于二的效果。想拓展您的編程職業(yè)生涯嗎?那就學(xué)習(xí)Android平臺編程吧,而且某一天,您將擁有包含幾百萬名移動(dòng)電話用戶的潛在市場—其中一些人可能需要使用您的程序。Android的核心是ARMLinux。單憑這一點(diǎn)就可以對此平臺的迅速發(fā)展抱有極大信心。Linux是一?快速且安全的操作系統(tǒng),有成千上萬名的程序員對它都很熟悉。許多基于Linux的系統(tǒng)被連接到云中并服務(wù)請求,它們可以正常運(yùn)行好多年—這充分證明了linux的可靠性。安全模型單元Android的安全模型只允許程序有自己的數(shù)據(jù)30開發(fā)環(huán)境:Eclipse、Windows、Linux考慮Android開發(fā)環(huán)境時(shí),程序員們有多種選擇。他們可以使用Microsoft?Windows?XP或WindowsVista?、MacintoshOSX(V10.4.8或更高版本,僅x86)、DesktopLinux(首選Ubuntu)。這些常用的操作系統(tǒng)都有可下載的軟件開發(fā)工具包(SDK)。您可以使用Eclipse或SunMicrosystems的NetBeans之類的GUIIDE,也可以使用命令行方法和標(biāo)準(zhǔn)編輯器,您可以任意選擇。Android社區(qū)鼓勵(lì)相互交流,創(chuàng)建Android的公司也是如此,這些公司有Google、HTC、T-Mobile和開放手機(jī)聯(lián)盟項(xiàng)目(OpenHa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年《勞動(dòng)關(guān)系協(xié)調(diào)員》考試模擬練習(xí)題(附參考答案)
- 綜合效應(yīng)量化方法研究-洞察與解讀
- 虛擬社交技能訓(xùn)練-洞察與解讀
- 2025年勞務(wù)員基礎(chǔ)(勞務(wù)員)新試題庫附答案
- 2025年事業(yè)單位招聘考試電子商務(wù)類綜合專業(yè)能力測試試卷:真題模擬詳解
- 2025年事業(yè)單位面試真題模擬試卷:面試考前押題卷與心理調(diào)適
- 福州事業(yè)單位招聘考試綜合類職業(yè)能力傾向測驗(yàn)真題模擬試卷
- 紅外線護(hù)理考試題及答案
- 赫賢入學(xué)考試題目及答案
- 培訓(xùn)項(xiàng)目衰退期風(fēng)險(xiǎn)防控-洞察與解讀
- 自備車補(bǔ)貼申請表
- 信息論與編碼(第4版)完整全套課件
- 汽修廠安全風(fēng)險(xiǎn)分級管控清單
- GB/T 2679.7-2005紙板戳穿強(qiáng)度的測定
- GB/T 25840-2010規(guī)定電氣設(shè)備部件(特別是接線端子)允許溫升的導(dǎo)則
- GB/T 25146-2010工業(yè)設(shè)備化學(xué)清洗質(zhì)量驗(yàn)收規(guī)范
- 參考資深同傳
- 多功能注氧儀說明書課件
- 科隆電磁流量計(jì)培訓(xùn)課件
- 全集舉一反三課件奧數(shù)五年級(數(shù)學(xué))
- 中國民間故事整本書導(dǎo)讀課教學(xué)設(shè)計(jì)
評論
0/150
提交評論