版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
中文版Android程序員入門
目錄
中文版Android程序員入門.........................................................1
目錄...........................................................................1
關(guān)于本博客的主題............................................................4
第一章什么是Android.......................................................................................................1
什么是Android-嵌入式設(shè)備編程的歷史-第一章(1)..................................................1
開放手機(jī)聯(lián)盟和Android-(2)........................................................................................3
介紹Android第一章(3)....................................................................................................4
Android示例-第四章(4)............................................................................................5
Android的幾個(gè)示例-第四章(5)................................................................................6
第二章下載和安裝Eclipse總則....................................................8
下載和安裝Eclipse總則-第二章(1)........................................................................8
下載和安裝JRE-第二章(2)........................................................................................9
下載和安裝Eclipse-第二章(3)................................................................................11
第三章下載和安裝AndroidSDK.............................................................................................13
下載和安裝AndroidSDK-第三章(1).......................................................................13
下載AndroidSDK-第三章(2)..................................................................................14
為Eclipse酉己置AndroidPlugin-第三章(3).............................................................16
第四章瀏覽AndroidSDK........................................................................................................19
瀏覽AndroidSDK-第四章(1)..................................................................................19
AndroidSDK是什么-第四章(2).............................................................................20
Android文檔-第四章(3).........................................................................................20
Android示例-第四章(4)..........................................................................................21
Android的幾個(gè)示例-第四章(5)..............................................................................22
Android工具-第四章(6)..........................................................................................24
AndroidAPIs-第四章(7)...........................................................................................25
應(yīng)用程序生命周期-第四章(8)....................................................................................27
第五章Android程序:HelloWorld!.........................................................................................29
Android程序:HelloWorld!-第五章(1).....................................................................29
仔細(xì)查看Android創(chuàng)建的文件-第五章(2)....................................................................32
引用庫和目錄-第五章(3)..............................................................................................33
HelloWorid!自動(dòng)產(chǎn)生文件的詳解-第五章(4)...........................................................35
HellowWorld!再來一次-第五章(5)............................................................................39
HelloWorld!使用一個(gè)圖形-第五章(6).......................................................................42
HelloWorld!代碼為基的UI-第五章(7)....................................................................44
HelloWorld!XML為基的UI-第五章(8)..................................................................46
第六章使用命令行工具和Android模擬器..........................................49
使用命令行工具和Android模擬器-第六章(1)............................................................49
利用WindowsCLI創(chuàng)建一個(gè)殼活動(dòng)-第六章(2)..........................................................49
運(yùn)行ActivityCreator.bat-第六章(3)..............................................................................50
項(xiàng)目結(jié)構(gòu)-第六章(4)................................................................................................53
在WindowsCLI下創(chuàng)建HelloWorld!活動(dòng)-第六章(5)...........................................60
增加JAVA_HOME第六章(6)..................................................................................61
編譯并安裝應(yīng)用程序第六章(7)......................................................................................62
如果運(yùn)行ANT時(shí)出錯(cuò)該怎么辦?第六章(8).................................................................62
用adb安裝你的應(yīng)用程序第六章(9).............................................................................68
運(yùn)行應(yīng)用程序產(chǎn)生了一個(gè)錯(cuò)誤怎么辦-第六章(10)......................................................69
卸載一個(gè)較早的活動(dòng)-第六章(11).................................................................................70
重新安裝并啟動(dòng)應(yīng)用程序-第六章(12)....................................................................71
Linux上的HelloWorld!第六章(13).........................................................................71
在CLI中創(chuàng)建一個(gè)圖片基礎(chǔ)的HelloWorld!第六章(14)..........................................74
第七章使用Intents和電話撥號盤................................................75
使用Intents和電話撥號盤第七章(1)...........................................................................75
Intents是什么?第七章(2).............................................................................................76
使用撥號盤第七章(3).....................................................................................................82
從你的活動(dòng)中打出電話第七章(4)..................................................................................86
編輯活動(dòng)許可第七章(5).................................................................................................88
修改AndroidPhoneDialer第七章(6).............................................................................91
執(zhí)行一個(gè)EditTextView第七章(7).................................................................................97
試試這個(gè):修改AndoridPhoneDialer項(xiàng)目第七章(8)................................................101
第八章列表,菜單和其它Views..........................................................................................105
列表,菜單和其它Views第八章(1)............................................................................105
修改AndroidManifest.xml文件第八章(2)...................................................................108
使用菜單第八章(3).......................................................................................................112
為AutoComplete創(chuàng)建一個(gè)活動(dòng)第八章(4)..................................................................117
按鈕第八章(5)...............................................................................................................127
CheckBox第八章(6).....................................................................................................133
EditText第八章(7).........................................................................................................140
RadioGroup第八章(8)..................................................................................................146
Spinner第八章(9).........................................................................................................154
試試這個(gè):修改更多的View屬性第八章(10)............................................................161
第九章使用手機(jī)的GPS功能....................................................162
使用手機(jī)的GPS功能第九章(1).................................................................................162
什么是軌跡文件第九章(2)............................................................................................166
使用Android位置基礎(chǔ)API讀取GPS第九章(3).......................................................167
書寫代碼來允許活動(dòng)第九章(4)....................................................................................173
傳遞坐標(biāo)到Google地圖第九章(5).............................................................................175
增加縮放控制第九章(6)................................................................................................180
試試這個(gè):在MapView之間轉(zhuǎn)換第九章(7)...............................................................187
第十章使用GoogleAPI的Gtalk...........................................................................................194
使用GoogleAPI的GTalk第十章(1)..........................................................................194
在Android中執(zhí)行GTalk第十章(2).............................................................................196
編譯并運(yùn)行GoogleAPI第十章(3)................................................................................206
試試這個(gè):為GoogleAPI活動(dòng)增加設(shè)置特性第十章(4).............................................208
第十一章應(yīng)用程序:找一個(gè)朋友.................................................209
應(yīng)用程序:找-個(gè)朋友第十一章(1).................................................................................209
創(chuàng)建一個(gè)SQLite數(shù)據(jù)庫第H-一章(2)...............................................................................210
創(chuàng)建一個(gè)定制的ContentProvider第H—■章(3)............................................................212
創(chuàng)建ContentProvider第H??一章(4).................................................................................215
創(chuàng)建FindAFriend活動(dòng)第十一章(5)................................................................................230
創(chuàng)建NameEditor活動(dòng)第H-一章(6).................................................................................233
創(chuàng)建LocationEditor活動(dòng)第一|一章(7)............................................................................239
創(chuàng)建FriendsMap活動(dòng)第H"一章(8).................................................................................252
創(chuàng)建FindAFriend活動(dòng)第I一章(9)................................................................................261
運(yùn)行FindAFriend活動(dòng)第十一章(10)...............................................................................266
AndroidSDK工具參考第卜二章(完)..........................................267
AndroidSDK工具參考第十二章(完)....................................267
AndroidSDK1.5-包裝索弓I.........................................................................................................276
關(guān)于本博客的主題
因?yàn)楸救藢??些智能手持設(shè)備感興趣,像手機(jī),GPS等,所以在以往的博客里會涉及到
很多這方面的內(nèi)容。最近,看到谷歌發(fā)布了Android這個(gè)開發(fā)平臺,也就是說可以自己為谷
歌的手機(jī),也就是國內(nèi)所說的遨應(yīng)寫軟件。所以,迫不及待的上網(wǎng)找一些資料?,發(fā)現(xiàn)可以
參考的資料寥寥無幾。而且絕大部分是英文版的。這不能不說是對國內(nèi)的手機(jī)編程愛好者是
一個(gè)很大的障礙。
我的想法是自己的學(xué)習(xí)的同時(shí).,通過自己的英文能力,把一些好的英文教材翻譯出來,
然后在這個(gè)空間里放出來,使國內(nèi)想學(xué)習(xí)Android編程的人能有一個(gè)快速學(xué)習(xí)的機(jī)會。為何
選擇在這里發(fā)布,主要的原因是,我原先的博客里有很多其它的內(nèi)容,所以不容易管理。而
放在這里會比較容易管理和更新,而不至于讓博客的主題顯得不集中。
目前,我做的第一個(gè)項(xiàng)目就是翻譯一本叫做:AndroidAProgrammer'sGuide(Android
程序員向?qū)В┻@樣一本教材。全書一共300多頁。計(jì)劃在今年6月份之前結(jié)束這個(gè)項(xiàng)目。
在翻譯和發(fā)布的過程中,為了節(jié)約時(shí)間,會把其中的插圖省略。如果大家感興趣,可以下載
英文版,對照插圖使用。
第一章什么是Android
什么是Android-嵌入式設(shè)備編程的歷史-第一章(1)
暫時(shí)可以這樣說,傳統(tǒng)的桌面應(yīng)用程序開發(fā)者已經(jīng)被慣壞了。這個(gè)不是說桌
面應(yīng)用程序開發(fā)比其他開發(fā)很簡單??傊鳛樽烂鎽?yīng)用程序開發(fā)者,我們已經(jīng)有
能力按照我們的想法創(chuàng)造出各種應(yīng)用程序。包括我自己,因?yàn)槲乙彩菑淖鲎烂娉?/p>
序開始的。一方面,我們已經(jīng)使得桌面程序更容易的與桌面操作系統(tǒng)來進(jìn)行交互,
并且和任何底部的硬件很自由的交互。這種類型獨(dú)立自主的程序編制其實(shí)對于很
小的開發(fā)者團(tuán)體來說是不敢貿(mào)然趟手機(jī)開發(fā)這趟渾水的。
注意:
在本部分討論中,我提到兩種不同的開發(fā)者:傳統(tǒng)的桌面應(yīng)用程序開發(fā),
他們能使用任何的編程語言,而且最終的產(chǎn)品和程序是用來運(yùn)行“桌面”操作系
統(tǒng)的;還有就是Android的程序開發(fā)者,為Android平臺開發(fā)程序的JAVA程序
員。我不是想說誰更好或者其它的意圖。區(qū)別僅僅在于想說明并比較桌面操作系
統(tǒng)環(huán)境的開發(fā)風(fēng)格,工具。
有很長一段時(shí)間,手機(jī)的開發(fā)者由大的著名開發(fā)組中的少數(shù)人組成,作為嵌
入式設(shè)備的開發(fā)者。相對于桌面開發(fā)或者后續(xù)的網(wǎng)絡(luò)開發(fā),被視作更少“魅力”,
而且嵌入式設(shè)備的開發(fā)通常因?yàn)橛布筒僮飨到y(tǒng)而處于劣勢。因?yàn)榍度胧皆O(shè)備的
制造商們太小氣,他們要保護(hù)他們硬件方面的秘密,所以他們給開發(fā)者們非常有
限的庫來運(yùn)行。
嵌入設(shè)備與桌面系統(tǒng)顯著不同的一部分是嵌入設(shè)備是個(gè)“芯片上的電腦”。
例如:說起你的標(biāo)準(zhǔn)電話遙控。這個(gè)并不是一個(gè)非常強(qiáng)大并且復(fù)雜性的技術(shù)。當(dāng)
任何的按鈕被按下去,一個(gè)芯片解釋一個(gè)信號以一種方式已經(jīng)被編程進(jìn)了設(shè)備。
這個(gè)允許設(shè)備知道什么是從輸入設(shè)備(鍵盤)來的需要。并且如何的響應(yīng)這些命
令(比如,打開電視機(jī))。這個(gè)是一個(gè)簡單的嵌入式設(shè)備的編程。總之,不管你
相不相信,像這樣的簡單設(shè)備絕對的和早期的手機(jī)和開發(fā)有著緊密的聯(lián)系。
大多數(shù)的嵌入式設(shè)備運(yùn)行(有些還在運(yùn)行)在私有的操作系統(tǒng)。原因是選擇
并創(chuàng)建一個(gè)私有的操作系統(tǒng)而不同定制的系統(tǒng)是產(chǎn)品必然選擇。簡單的設(shè)備不需
要非常健全和優(yōu)化的操作系統(tǒng)。
作為一個(gè)產(chǎn)品的演化,更多復(fù)雜的嵌入式設(shè)備,如早期的PDA,家庭安全系
統(tǒng)和GPS等。5年前某種程度上都轉(zhuǎn)移標(biāo)準(zhǔn)的操作系統(tǒng)平臺上。小的操作系統(tǒng)如
Linux,或者一個(gè)微軟的嵌入式平臺,已經(jīng)在嵌入設(shè)備上變得普遍了。設(shè)備演變的
那些時(shí)間里,卜機(jī)口門口的路彳令開始分31":。|這個(gè)分支是顯而易見的。
差不多開始的時(shí)候,手機(jī)作為一個(gè)外圍設(shè)備并且運(yùn)行私有軟件,而這些軟
件被制造商們所擁有和控制,而且?guī)缀蹩梢员徽J(rèn)為是一個(gè)“關(guān)閉”的系統(tǒng)。習(xí)慣
使用私有操作系統(tǒng)主要是制造商自己開發(fā)硬件,或者至少定義了開發(fā)的目的只是
用來運(yùn)行手機(jī)。最終的結(jié)果就是使開放成為不可能。現(xiàn)有的軟件包或者解決方案
會可靠的和他們的硬件交互。而且,制造商想要保護(hù)他們硬件的商業(yè)秘密。以防
允許進(jìn)入而發(fā)現(xiàn)設(shè)備軟件的水準(zhǔn)。所以風(fēng)尚就是,而且大多數(shù)仍然是使用完全私
有并且關(guān)閉的軟件來運(yùn)行他們的設(shè)備。任何人想為手機(jī)開發(fā)程序必須需要詳盡的
私有環(huán)境來而解決方案就是直接從制造商那里購買昂貴的開發(fā)
工具。這就孤立了很多的“自制軟件”的開發(fā)者。
注意:
一個(gè)關(guān)于?制軟件開發(fā)的文化包含了手機(jī)程序的開發(fā)?!白灾栖浖笔侵搁_發(fā)者
通常不是工作在手機(jī)開發(fā)公司內(nèi),通常利用自己的時(shí)間在他們的設(shè)備上生產(chǎn)小
的,一次性的產(chǎn)品。
另外,使手機(jī)開發(fā)無法出手的是硬件制造商對于“內(nèi)存和需要”左右為難的
解決方案。直到最近,手機(jī)才能執(zhí)行比打出和接聽電話,查找聯(lián)系人,發(fā)送和接
收短消息。不是今天“瑞士軍刀”的技術(shù)。及時(shí)在2002年,在消費(fèi)者的手上,
帶照相機(jī)的手機(jī)還是不多見。在1997年,小的應(yīng)用程序如計(jì)算器和游戲爬進(jìn)了
手機(jī)內(nèi),但是強(qiáng)大的功能仍然是手機(jī)的撥號盤本身。手機(jī)還不想今天一樣是一個(gè)
多用途,多功能工具。沒有人預(yù)見互聯(lián)網(wǎng)瀏覽的需求,MP3播放,或者更多的是
我們今天定制的功能。在1997年,手機(jī)制造商們沒有預(yù)見消費(fèi)者需要的是一個(gè)
?體化的設(shè)備。但是,即使這個(gè)需求展現(xiàn)出來,設(shè)備內(nèi)存和存儲容量還是一個(gè)需
要克服的大的障礙。更多的人可能想要他們的設(shè)備是一個(gè)多功能一體化的工具,
但是制造商們不許跨越他們的障礙。
讓問題變得簡單,就要在任何的設(shè)備讓內(nèi)存來存儲并運(yùn)行程序,包括手機(jī)。
手機(jī)作為一個(gè)設(shè)備,直到最近還沒有足夠多內(nèi)存來執(zhí)行“額外”的程序。在最近
的兩年里,內(nèi)存的價(jià)格已經(jīng)達(dá)到了非常低的水平。設(shè)備制造商們有足夠的能力壓
低價(jià)格來包含更多的內(nèi)存。很多的現(xiàn)在的手機(jī)標(biāo)準(zhǔn)內(nèi)存已經(jīng)超過了90年代中期
電腦內(nèi)存。于是,現(xiàn)在我們有需求,而且有內(nèi)存。我們可以直接跳到為手機(jī)開發(fā)
酷的應(yīng)用程序了,對嗎?不完全是這樣。設(shè)備的制造商們?nèi)匀痪o密的保護(hù)他們的
操作系統(tǒng)。有一些在手機(jī)上開放JAVA為基礎(chǔ)的小運(yùn)行環(huán)境。更多的是不允許。
即使允許運(yùn)行JAVA應(yīng)用程序但還是不允許進(jìn)入核心的系統(tǒng)。而這些是桌面開發(fā)
者習(xí)慣于擁有的。
開放手機(jī)聯(lián)盟和Android-(2)
這個(gè)對于應(yīng)用程序開發(fā)的障礙開始在2007年的11月份被打破,當(dāng)Google在開放手機(jī)聯(lián)
盟下發(fā)布Android1,開放手機(jī)聯(lián)盟是一個(gè)硬件和軟件開發(fā)者的集合,包括谷歌,NTT
DoCoMo,SprintNextel和HTC。他們的目標(biāo)是創(chuàng)建一個(gè)更多的開放手機(jī)環(huán)境。在開放聯(lián)盟第
一個(gè)被發(fā)布的產(chǎn)品就是移動(dòng)設(shè)備操作系統(tǒng)Android。(更多關(guān)于開放手機(jī)聯(lián)盟的信息,見:
www.openhandsetalliance,com)。
對于這個(gè)Android的發(fā)布,谷歌使很多開發(fā)工具和向?qū)С蔀榭赡軄韼椭谛?/p>
系統(tǒng)上可能的開發(fā)者。幫助系統(tǒng),平臺軟件開發(fā)包(SDK),甚至一個(gè)開發(fā)者的論
壇,可以在谷歌的Android的網(wǎng)站上找到,http可/code.google,com/android.
這個(gè)網(wǎng)站應(yīng)該是你的起點(diǎn),而且我極度推薦你去訪問。
注意:
谷歌為了推動(dòng)這個(gè)新的Android操作系統(tǒng),甚至為尋找新的Android程序而設(shè)立
了1000萬美元的獎(jiǎng)金。
運(yùn)行Linux,Windows或者即使PalmOS的手機(jī)是很容易找到,如本文所述,
沒有硬件平臺已經(jīng)宣告可以來運(yùn)行Android.HTC,LG電子,摩托羅拉和三星都是
開發(fā)手機(jī)成員,在Android的發(fā)布下,我們希望在不久的將來有一?些Android
為基的設(shè)備。在2007年11月發(fā)布時(shí),系統(tǒng)自身還仍舊是一個(gè)測試版的程序。這
是個(gè)對開發(fā)者的好新聞因?yàn)樗o了我們一個(gè)罕見的提前看到將來的設(shè)備和有機(jī)
會來開始開發(fā)應(yīng)用程序,而當(dāng)硬件發(fā)布時(shí)就可以運(yùn)行。
注意:
這個(gè)策略明確的給了開放手機(jī)聯(lián)盟一個(gè)大的優(yōu)勢,超越其它手機(jī)操作系統(tǒng)開發(fā)
者。因?yàn)楫?dāng)?shù)谝淮O(shè)備發(fā)布時(shí)會有數(shù)不盡的可用開發(fā)程序可以運(yùn)行。
介紹Android第一章(3)
Android,作為一個(gè)系統(tǒng),是一個(gè)運(yùn)行在Linux2.6核心上的JAVA基礎(chǔ)的操
作系統(tǒng)。系統(tǒng)是非常輕量型的而且全特性。
圖顯示了一個(gè)未經(jīng)修改的Android桌面屏幕。
Android應(yīng)用程序用JAVA開發(fā)而且很容易被放置到新的平臺上。如果你沒
有下載JAVA或者不確定那一個(gè)版本你需要,我在第二章詳細(xì)列出了開發(fā)環(huán)境的
安裝。其他Android的特點(diǎn)包括一個(gè)加速3-D圖形引擎(基于硬件支持),被
SQLite推動(dòng)的數(shù)據(jù)庫支持,和一個(gè)完整的網(wǎng)頁瀏覽器。
如果你熟悉JAVA編程或者是任何種類的OOP開發(fā)者,你可能使用程序用戶
接口(UI)開發(fā)-那就是,UI安置是直接在程序代碼中有句柄的。Android,識
別并許可UI開發(fā),而且支持新生,XML為基礎(chǔ)的UI布局。XMLUI布局對普通桌
面開發(fā)者是一個(gè)非常新的概念。我會在本書的相關(guān)章節(jié)里描述XMLUI布局和程
序化UI開發(fā)。
Android另一個(gè)更令人激動(dòng)和關(guān)注的特點(diǎn)是因?yàn)樗臉邮?,第三方?yīng)用程序
——包括“自制的”——會和系統(tǒng)捆綁的有著同樣的優(yōu)先權(quán)。這是和大多數(shù)系統(tǒng)
不同之處,但是給了嵌入式系統(tǒng)程序一個(gè)比由第三方開發(fā)者創(chuàng)建的線性優(yōu)先權(quán)大
的優(yōu)先執(zhí)行權(quán)。而且,每一個(gè)應(yīng)用程序在虛擬計(jì)算機(jī)上以一個(gè)非常輕量的方式按
照自己的線路執(zhí)行。
除了大量的SDK和成型的類庫可以用之外,對激動(dòng)人心的特性對于Android
的開發(fā)者來說是我們現(xiàn)在可以進(jìn)入到操作系統(tǒng)可以進(jìn)入的地方。也就是說,如果
你要?jiǎng)?chuàng)建一個(gè)應(yīng)用程序打一個(gè)電話,你已經(jīng)進(jìn)入到電話的撥號盤。加入你要?jiǎng)?chuàng)建
一個(gè)應(yīng)用程序來使用電話內(nèi)部的GPS(如果安裝了),你已經(jīng)進(jìn)入了。對于開發(fā)
者創(chuàng)建動(dòng)態(tài)和令人好奇的程序已經(jīng)敞開大門。
和上面這些可用的特點(diǎn)相同,谷歌已經(jīng)非常迫切的奉送一些特性。Android
的開發(fā)者可以將自己的應(yīng)用程序和谷歌提供的如谷歌地圖和無所不在的谷歌搜
索綁在一起。假設(shè)你要寫程序在谷歌地圖上顯示一個(gè)來電話者的的位置,或者你
要儲存一般的搜索結(jié)果到你的聯(lián)系人中。在Android中,這個(gè)門已經(jīng)完全打開。
第二章開始你Android的開發(fā)旅程。你會學(xué)到如何和為什么使用特定的開發(fā)環(huán)境
或者綜合的開發(fā)環(huán)境(IDE),而且你會下載并且安裝JAVAIDEEdipse.
問專家:
Q:谷歌和開放手機(jī)聯(lián)盟的區(qū)別在哪里?
A:谷歌是開放手機(jī)聯(lián)盟的一個(gè)成員。谷歌在收購了Android的原開發(fā)后,在開放
手機(jī)聯(lián)盟發(fā)布了操作系統(tǒng)。
Q:Android有能力運(yùn)行任何的Linux軟件嗎?
A:沒必要。我堅(jiān)信會有一種方式繞開大多數(shù)的開源系統(tǒng)和應(yīng)用程序用Android
SDK編譯而用于Android。主要原因是Android程序執(zhí)行特定的文件格式,這會
在后續(xù)的章節(jié)中討論。
Android示例-第四章(4)
Android示例在SDK/SAMPLES內(nèi),包含了6個(gè)示例可以很好的描述Android
的一些功能:
?APIDemos
?Hello,Activity!
?LunarLander
?NotePad
?SkeletonApp
?Snake
這些示例由谷歌提供來給你一個(gè)快速的印象,那就是如何快速的開發(fā)
Android的應(yīng)用程序。每一個(gè)應(yīng)用程序描述Android不同功能的一一塊。你可以用
Eclipse打開并且運(yùn)行這些應(yīng)用程序。下面是對于每一個(gè)示例的簡要描述。
APIDemos
這個(gè)API示例應(yīng)用程序說明在一個(gè)單獨(dú)的Activity內(nèi)如何展示多個(gè)API功能的示
例。
提示:
一個(gè)Activity是一個(gè)Android的應(yīng)用程序。Activities會在后續(xù)的章節(jié)中深入展開。
如下圖(略)所示的,這個(gè)API示例應(yīng)用程序包好了很多的,小的不同的Android
功能的例子。這些例子包含3-D圖形變換,列表,過程對話框和一個(gè)手指-畫圖
示例O
運(yùn)行API樣本示例應(yīng)用程序
使用Eclipse,裝載API示例應(yīng)用現(xiàn)場作為一個(gè)Android項(xiàng)目。要做到這個(gè),在
Eclipse菜單選擇文件|新建|項(xiàng)目,一個(gè)新的Android項(xiàng)目向?qū)?dòng)?,F(xiàn)在不用
擔(dān)心向?qū)ы撁嫔系囊恍┻x項(xiàng)。只是選擇從現(xiàn)有的項(xiàng)目中創(chuàng)建項(xiàng)目就好了,并且瀏
覽到API示例所在的目錄,點(diǎn)擊這個(gè)示例。當(dāng)項(xiàng)目裝載好了,選擇運(yùn)行,在Android
模擬器中來查看。用你自己的方式去查看超過40個(gè)示例吧,使用每一個(gè)示例去
熟悉這些術(shù)語和功能。
Android的幾個(gè)示例?第四章(5)
Hello,Activity!
Hello,Actoviry應(yīng)用程序,是一個(gè)簡單的HelloWorld風(fēng)格的應(yīng)用程序。雖然設(shè)
計(jì)簡單,但是它展示了平臺的能力。在下一章,你會創(chuàng)建自己的Hell。World!風(fēng)
格的程序。
LunarLander月球登陸
LunarLander是一個(gè)在Android模擬器上玩的游戲。這個(gè)游戲是2-D的游戲它
在Android上工作是多么的簡單??刂品浅5暮唵?,而且游戲不是非常的復(fù)雜。
總之,對游戲開發(fā)來說是一個(gè)良好的開始。
月球登陸執(zhí)行一個(gè)簡單控制方案(上,下,左,右)。游戲同時(shí)顯示相關(guān)的非固
定的圖形并且對平臺來說,令人印象深刻。復(fù)雜游戲的理論如沖突檢出是以一個(gè)
簡單的方式使用的。雖然本書沒有包含Android平臺游戲編程的內(nèi)容,加入你有
興趣來做這個(gè),你或許可以從月球登陸中獲得某些啟發(fā)。
NotePad寫字板
NotePad,允許你打開,創(chuàng)建并且編輯小的筆記。寫字板不是一個(gè)全功能的字符
編輯器,所以不要期待是和WindowsMobile中word的競爭對手。但是,作為
一個(gè)演示工具,使用非常少的代碼就能實(shí)現(xiàn)這個(gè)效果已經(jīng)非常的棒了。
SkeletonApp框架應(yīng)用
SkeletonApp這是一個(gè)基本的程序,展示了兒個(gè)不同的應(yīng)用程序功能。如字體,
按鈕,圖形和表格。如果你想自己運(yùn)行SkeletonApp,真的不應(yīng)當(dāng)把它排除在
外,參考SkeleteApp,它會提供不少關(guān)于如何執(zhí)行特定的條款。
Snake蛇
最有一個(gè)在AndroidSDK的示例就是這個(gè)蛇了。這是一個(gè)小的SNAFU風(fēng)格游
戲,比月球登陸復(fù)雜。
注意:
如果你打開每一個(gè)示例應(yīng)用程序的文件夾,你會看到一個(gè)文件夾命名為src。這
個(gè)是給出示例源代碼的文件夾。你可以為其他任何的應(yīng)用程序來查看,編輯并且
重新編譯這些代碼。利用這些源代碼來學(xué)一些Android平臺技巧和提示。
第二章下載和安裝Eclipse總則
下載和安裝Eclipse總則-第二章(1)
-關(guān)鍵技能&概念
一選擇一個(gè)開發(fā)環(huán)境
一下載Eclipse
-安裝和配置Eclipse
Android應(yīng)用程序是在JAVA下開發(fā)的。Android自身不是一個(gè)語言,但是是
一個(gè)運(yùn)行應(yīng)用程序的環(huán)境。這樣,理論上你可以使用任何發(fā)布或者綜合開發(fā)環(huán)境
(IDE)來開始你的開發(fā)。事實(shí)上,你可以選擇非IDE開發(fā)。
提示:
在本章稍后,我會介紹不使用IDE或者“命令行接口”(CLI)來開發(fā)Android
應(yīng)用程序。這期間,我不會在書中的每一個(gè)例子都使用這種技術(shù),你將會學(xué)到如
何在CLI里開發(fā)的基礎(chǔ)知識。
假如你對使用JAVA的IDE比較舒服,如Borland的JBuilder或者開源
NetBeans,你可以盡管去使用。有了中等的水平的經(jīng)驗(yàn),你應(yīng)當(dāng)可以適應(yīng)本書大
部分的例子。但是,開放手機(jī)聯(lián)盟和谷歌認(rèn)同一個(gè)JAVA的IDE,那就是:Eclipse.
注意:
如果你選擇不用Eclipse來跟從本書的例子,你需要看看你的IDE文檔關(guān)于
編譯和測試你的Android的程序。書中的例子只給了如何在Eclipse中編譯和測
試程序的說明,在Eclipse中使用Android的plugin。
本章簡明的描述了如何下載和安裝Eclipse以及所要求的JAVARuntime
Environment(JRE)o很多的時(shí)候,安裝向?qū)Ш徒滩内呄蛴谔^簡單的步驟。我
已經(jīng)發(fā)現(xiàn)跳過簡單的步驟經(jīng)常忽略重要的條目。因?yàn)檫@個(gè)原因,我在本章內(nèi)包含
了從下載到安裝的所有步驟。
為什么是Eclipse?
為什么Eclipse是推薦的Android程序開發(fā)的IDE呢?對這個(gè)特定的認(rèn)同有
一些原因:
1、為了保持開發(fā)手機(jī)聯(lián)盟真正開放移動(dòng)開發(fā)市場的宗旨,Eclipse是有著
同樣顯著特點(diǎn)的,免費(fèi)的JavaIDE可以使用。Eclipse同樣容易使用,最少的
學(xué)習(xí)時(shí)間。這些特性讓Eclipse對于固定的,開放的Java開發(fā)成為吸引人的IDE。
2、開發(fā)手機(jī)聯(lián)盟已經(jīng)為Eclipse發(fā)布了一個(gè)Android的plugin,允許你來
創(chuàng)建Android-定義項(xiàng)目,編譯它們,并且使用Android模擬器來運(yùn)行和調(diào)試程
序。當(dāng)你開發(fā)你的第一個(gè)Android程序時(shí),這些工具和能力將會是非常寶貴的。
你還是可以用其它的IDE來創(chuàng)建Android程序,但是Android的plugin為Elipse
創(chuàng)建某些元素——如,文件和編譯設(shè)定。這些來自Android-plugin的幫助將縮
短你寶貴的開發(fā)時(shí)間并減少學(xué)習(xí)的彎路,那就意味著你可以花費(fèi)更多的時(shí)間來創(chuàng)
建驚人的應(yīng)用程序了。
注意:
Elipse同樣也可用于蘋果和Linux系統(tǒng),有著強(qiáng)大的能力,在不同的操作系統(tǒng),
意味著兒乎每個(gè)人可以在任何的電腦上開發(fā)Android的應(yīng)用程序。不過,本書的
例子和電腦截圖覺來自與微軟Windows版本的Eclipse。記住這一點(diǎn),如果你使
用其他的電腦操作系統(tǒng)。你的界面可能看上去會有輕微的不同,但是總體的功能
不會改變。如果在Linux的Eclipse有一些主要的操作不同點(diǎn)的話,我會舉例說
明。我會舉出一些在Linux上的列子。而主要的例子會是Linux/Android的命令
行環(huán)境(CLE)o
下載和安裝JRE-第二章(2)
在你下載和安裝Eclipse之前,你必須確保在電腦上下載并安裝了Java
RuntimeEnvironment(JRE)。因?yàn)镋clipse作為一個(gè)程序是由Java寫成,它
要求JRE來運(yùn)行。如果JRE沒有安裝或被檢測到,如果你試著打開Eclipse,你
會看見下面的錯(cuò)誤:
AJavaRuntimeEnvironment(JRE)orJavaDevelopmentKit(JDK)
mustbeavailableinordertorunEclipse.NoJavavirtualmachine
foundaftersearchingthefollowinglocations:
C:\Android\tclip5e\jre\b1n\javw.exe
javaw.exeinyourcurrentPATH
如果你已經(jīng)是一個(gè)Java的開發(fā)者并且已經(jīng)在電腦上安裝了Java,你還是要
按照提示安裝,確保安裝了正確版本的JRE。
注意:
大多數(shù)使用過網(wǎng)絡(luò)或者以網(wǎng)絡(luò)為基礎(chǔ)的應(yīng)用程序的人,安裝過JRE。JRE允許你
運(yùn)行Java基礎(chǔ)的應(yīng)用程序,但是它不允許你去創(chuàng)建它。要?jiǎng)?chuàng)建Java應(yīng)用程序,
你需要下載并安裝JavaDevelopmentKit(JDK),這個(gè)包含了創(chuàng)建Java應(yīng)用程
序所需的所有工具和庫。如果你不熟悉Java,記住這一點(diǎn)就行了。對于書中提到
的例子,我會下載JDK,因?yàn)樗舶薐RE.雖然你不需要JDK來運(yùn)行Eclipse,
但是你還是可以在本書后續(xù)章節(jié)的開發(fā)中使用。
導(dǎo)航到Sun公司的下載頁面,http://developers,sun.com/down1oads/,如
下面的插圖(略)所示。正常情況你只需要JRE來運(yùn)行Eclipse,但是對于本書
的目的,你應(yīng)當(dāng)下載包含了JRE的完整的JDK,下載JDK的原因是在本書的后面,
我會提到只使用JDK而非Eclipse來開發(fā)Android程序。如果你想跟從教材的話,
你會需要完整的JDKo
從SUN的下載頁面,導(dǎo)航到適當(dāng)JDK的下載部分。選擇并下載,如下圖(略):
對于書中例子,我選擇使用Java5JDKUpdata14,因?yàn)樵贓clipse文檔中
明確說明這是個(gè)支持的版本。要下載Java5JDK,選擇你要下載的平臺來下載。
你可能簡單的跟著下載Java6JDK。但是,如果你要下載舊的JDK5,你需要點(diǎn)
擊前一個(gè)發(fā)布的鏈接,如圖(略):
注意:
下載前,你必須同意并接受Sun公司的專利使用權(quán)轉(zhuǎn)讓協(xié)定。
在JavaSe以前一個(gè)發(fā)布下載頁面,點(diǎn)擊J2SE5.0下載鏈接,然后點(diǎn)擊JDK
5.0Updatex下載按鈕,x是最后的升級號碼(14是本書寫的時(shí)候的號碼,你
下載的時(shí)候可能會有所不同)。
如果你正在下載一個(gè)到微軟Windows的環(huán)境,當(dāng)你見到如下圖(略)所示的
通知時(shí),點(diǎn)擊Run來開始JDK的安裝。
提醒:
如果你想要保存一份JDK包的備份,點(diǎn)擊Save而并非Run??傊?,當(dāng)你選
擇保存了JDK,確保注意保存位置。在下載結(jié)束后,你需要導(dǎo)航到下載位置并且
手動(dòng)執(zhí)行安裝包。
在安裝期間,你會被提醒閱讀協(xié)議,如下圖(略)。同意之后,點(diǎn)擊Next,
然后就可以選擇你的定制安裝選項(xiàng)了。
這里只有一點(diǎn)你需要改變的,除非你是一個(gè)成熟使用Java的人并且需要選
擇特定的選項(xiàng),在這種情況下,請自由的改變你需要的安裝選項(xiàng)。下面是JavaJDK
安裝的定制安裝圖(略)。
為了保持過程的簡單性,并且完全地標(biāo)準(zhǔn)化,你應(yīng)當(dāng)接受軟件自身的安裝建
議——選擇缺省的設(shè)定——并且點(diǎn)擊Next來繼續(xù)安裝。再次強(qiáng)調(diào),如果你想要
訂制改變,請按照你自己的方式進(jìn)行??傊绻诤竺娴恼鹿?jié)你遇到麻煩,你
會需要修改你的安裝選項(xiàng)。當(dāng)安裝完成的頁面出現(xiàn),如下圖:(略),點(diǎn)擊Finish,
然后你的安裝就會完成。
一旦你完成JavaJDK的安裝——而且根據(jù)缺省,JRE也會安裝——你可以
開始安裝EclipseT=
下載和安裝Eclipse-第二章(3)
導(dǎo)航到www.eclipse.org/downloads的下載頁面,如下圖(略)。根據(jù)開放段落
申明,需要JRE運(yùn)行環(huán)境(推薦Java5JRE)來開發(fā)Eclipse,而這個(gè)我們已經(jīng)
在上節(jié)描述過了。在這個(gè)站點(diǎn)下載為Java開發(fā)者準(zhǔn)備的Eclipse的IDE。軟件
包比較小(79MB)并且應(yīng)當(dāng)下載很快。確保你不是下載了EclipseIDEforJava
EE的開發(fā)包,因?yàn)檫@個(gè)是有點(diǎn)不同的產(chǎn)品而且我不會介紹它的使用說明。
在你下載了Elipse以后,是時(shí)候來安裝它了。導(dǎo)航到軟件包下載的位置。寫
這本書的時(shí)候,最新的Eclipse軟件包Windows版本的文件是
eelipse-java-curopa-fal12-win32.zip.解壓縮軟件包并且運(yùn)行Eclipse,exe。
Eclipse按照缺省方式安裝到以用戶目錄(微軟Windows),但是你或許想安裝到
你的程序文件目錄下。這樣會保持你應(yīng)用程序的有序而且允許你設(shè)定不同的目錄
作為工作空間。下圖(略)顯示了軟件啟動(dòng)的歡迎畫面。
注意:
如果你沒有看見歡迎畫面,試著重新啟動(dòng)電腦。如果重啟后沒有幫助的話,只下
載并安裝Java5JREo
一旦Eclipse安裝開始,你會被提醒來創(chuàng)建一個(gè)缺省的工作空間,或者文件
夾。和其他大多數(shù)開發(fā)環(huán)境一樣,項(xiàng)目被創(chuàng)建,并且保存到這個(gè)工作空間內(nèi)。缺
省的工作空間路徑是你的用戶路徑,選擇不同路徑,點(diǎn)擊Browse來導(dǎo)航。如圖
(略)。
我建議你同樣也選中選擇框來定義你所有的項(xiàng)目到一個(gè)工作空間。選中這個(gè)
框,當(dāng)創(chuàng)建新項(xiàng)目時(shí),你就會少一個(gè)需要擔(dān)心的事情,而且你總是會知道在哪個(gè)
路徑里能找到你的源文件。在本書內(nèi),有時(shí)你需要導(dǎo)航到項(xiàng)目文件,并且在
Android開發(fā)環(huán)境的外部工作,所以知道你文件的所在位置是非常有幫助的。
選擇工作空間之后,點(diǎn)擊0K。在這里,你的開發(fā)環(huán)境被下載好和安裝。雖
然Eclipse的安裝似乎很快,你仍然需要在創(chuàng)建你的第一個(gè)Android項(xiàng)目前配置
Eclipseo很多的配置工作都是和AndroidSDK和Androidplugin有關(guān)。
下一步你需要下載并安裝AndroidSDK,并且為Eclipse下載并安裝Android
plugino然后配置Eclipse設(shè)定。在第三章的結(jié)尾,你會有一個(gè)可以開發(fā)應(yīng)用程
序的完整的開發(fā)環(huán)境。然后你會瀏覽AndroidSDK并且在第五章創(chuàng)建你的第一個(gè)
HelloWorld!應(yīng)用程序。
問專家
Q:Eclipse是用來開發(fā)Java的,但是Android能運(yùn)行其他語言所寫的程序嗎?
A:寫這本書時(shí),沒有SDK或者模擬器可以讓Android來運(yùn)行Java以外的程序。
Q:能使用Eclipse(和AndroidSDK)和JRE非5的版本一起工作嗎?
A:技術(shù)上說你可以使用Eclipse和版本5或者更新的版本一起工作,但是最新
版本的Eclipse僅僅在Java5JRE上進(jìn)行過測試。
第三章下載和安裝AndroidSDK
下載和安裝AndroidSDK?第三章(1)
關(guān)鍵技能和概念
-下載AndroidSDK
-使用Eclipse的可升級特性
-為Eclipse下載,安裝并配置AndroidPlugin
-檢查PATH聲明
在前面的章節(jié)中,你下載并安裝了主要的開發(fā)環(huán)境,Eclipse?,F(xiàn)在,你的
原始開發(fā)環(huán)境已經(jīng)建立了,使用Eclipse作為你的JavaIDE,你可以用它來開
發(fā)Java的應(yīng)用程序。你必須以某種方式來配置它,以減輕Android的開發(fā)。
因?yàn)镋clipse是Java開發(fā)環(huán)境,你可以很簡單的創(chuàng)建并編輯Java項(xiàng)目。但
是,如果沒有可以理解的庫,規(guī)定Android應(yīng)用程序應(yīng)當(dāng)如何工作,你就無法開
發(fā)任何應(yīng)用可以在Android為基礎(chǔ)的設(shè)備上運(yùn)行的程序。要開始創(chuàng)建Android
項(xiàng)目,你需要下載并安裝AndroidSDK。然后你需要為Eclipse下載相關(guān)的
Androidplugiin來使用SDK。有了這些部件的支撐,你就可以開始開發(fā)工作了。
如果你已經(jīng)擁有任何的開發(fā)經(jīng)驗(yàn),很可能你已經(jīng)熟悉使用SDK的過程。桌面
程序的開發(fā)者,不管在哪一種的開發(fā)平臺上開發(fā),使用SDK來創(chuàng)建他們希望運(yùn)行
的系統(tǒng)上的應(yīng)用程序。AndroidSDK和其它的SDK相比沒有任何的不同,它包含
了所有的創(chuàng)建運(yùn)行在特有的Android平臺上應(yīng)用程序所需的Java代碼庫。SDK
還包括幫助文件,文檔和Android模擬器,大量的開發(fā)和調(diào)試工具。
注意:
第四章深入的闡述了AndroidSDK大多數(shù)的功能。
作為開始,你準(zhǔn)備從谷歌Android開發(fā)網(wǎng)站上下載AndroidSDK,網(wǎng)址:
http:〃code.google,com/android谷歌Android開發(fā)的主頁上包含為Android
平臺開發(fā)的大量有價(jià)值的工具和文檔,包括鏈接到Android開發(fā)者論壇。
提示:
如果你在開發(fā)的過程中遇到問題,你第一個(gè)找答案的地方應(yīng)該就是Android開發(fā)
者論壇。http:〃code,google.com/android/groups.html.這里有新手,開發(fā)者
和黑客的討論組。并且一個(gè)常規(guī)問題討論組??紤]到Android是一個(gè)全新的平臺,
Android開發(fā)者論壇是較少的能找到綜合,可靠信息的地方。
下載AndroidSDK-第三章(2)
從谷歌的http://code.google,com/android網(wǎng)頁可以很容易的找到Android
SDK軟件包。從開發(fā)的主頁,點(diǎn)擊下載SDK的鏈接開始。在你同意了AndroidSDK
的軟件許可協(xié)議后,你會看見AndroidSDK的下載頁面。AndroidSDK軟件包對
于Windows版本是79MB大小,你應(yīng)當(dāng)能夠很快的下載。根據(jù)你的操作系統(tǒng)選擇
軟件包開始下載。
注意:
軟件包的大小根據(jù)不同的操作系統(tǒng)可能不一樣。
說到AndroidSDK,這里沒有“setup”或者安裝過程。這里,你必須跟著下面
一些列的設(shè)置,在Eclipse開發(fā)環(huán)境里配置AndroidSDK。第一步是獲得Android
plugin,然后配置它。
為Eclipse下載和安裝AndroidPlugin,設(shè)置AndroidSDK的第一步就是為
Eclipse開發(fā)環(huán)境下載和安裝AndroidPlugin。Plugin的下載和安裝可以同時(shí)
進(jìn)行,而且非常的簡單。
1.打開Eclipse應(yīng)用程序,你將會下載為EclipseIDE準(zhǔn)備的AndroidPlugin。
2.選擇幫助|軟件升級|尋找和安裝。
3.在安裝/升級的窗口,會允許你執(zhí)行安裝和下載在Eclipse任何可用的plugin,
點(diǎn)擊搜索新特性選項(xiàng),然后點(diǎn)擊下一步。
4.UpdatesitestoVisit這個(gè)窗口會列出所有可獲得Eclipseplugin的網(wǎng)站。
但是,你所需要的AndroidforEclipse沒有列在這里,所以要下載這個(gè)Android
plugin你必須要告訴Eclipse到哪里去找它。所以點(diǎn)擊NewRemoteSite這個(gè)
按鈕。
5.在NewRemoteSite對話框內(nèi),你要提供兩個(gè)信息:網(wǎng)站的名稱和網(wǎng)址。名字
只是便于顯示并不影響下載。我們可以輸入AndroidPlugino在URL字段。輸
入:https://dl-ssl.google,com/android/clipse.點(diǎn)擊OK。
注意:
這里填寫的名字只是幫助你識別。你可以輸入任何你想要的名字。
6.現(xiàn)在新的站點(diǎn)AndroidPlugin應(yīng)當(dāng)在可用的站點(diǎn)列表上了。這時(shí),Eclipse
還沒有開始尋找plugin,這只是個(gè)路徑你告訴Eclipse。
7.選中Androidplugin的選擇框然后點(diǎn)擊完成。Eclipse開始任何可用的
plugino
8.在搜索結(jié)果頁面,選擇AndroidPlugin然后點(diǎn)擊完成。
9.在特性安裝的許可頁面,點(diǎn)擊接受許可協(xié)議,然后點(diǎn)下一步。
注意:
記住所有的plugin都安裝在/eclipse/plugins的路徑里。這個(gè)信息會幫助你假
如你需要自己放置Androidplugin。
10.Ecli
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安徽名校聯(lián)考英語試卷單選題及答案
- 二零二五年度商業(yè)地產(chǎn)項(xiàng)目民間融資合同書3篇
- 二零二五版健身房健身教練團(tuán)隊(duì)協(xié)作與考核聘用合同3篇
- 二零二五版WTO國際服務(wù)貿(mào)易55項(xiàng)重要協(xié)議實(shí)施合同2篇
- 2023-2024年項(xiàng)目部安全管理人員安全培訓(xùn)考試題含答案(預(yù)熱題)
- 2023年-2024年員工三級安全培訓(xùn)考試題及答案【典優(yōu)】
- 2024項(xiàng)目部安全管理人員安全培訓(xùn)考試題附完整答案(有一套)
- 2023年企業(yè)主要負(fù)責(zé)人安全培訓(xùn)考試題含下載答案
- 2024年項(xiàng)目部治理人員安全培訓(xùn)考試題(各地真題)
- 二零二五版壓力罐安裝工程現(xiàn)場管理與監(jiān)督合同3篇
- 工程款支付報(bào)審表
- 《項(xiàng)目施工組織設(shè)計(jì)開題報(bào)告(含提綱)3000字》
- ICU常見藥物課件
- CNAS實(shí)驗(yàn)室評審不符合項(xiàng)整改報(bào)告
- 農(nóng)民工考勤表(模板)
- 承臺混凝土施工技術(shù)交底
- 臥床患者更換床單-軸線翻身
- 計(jì)量基礎(chǔ)知識培訓(xùn)教材201309
- 中考英語 短文填詞、選詞填空練習(xí)
- 阿特拉斯基本擰緊技術(shù)ppt課件
- 新課程理念下的班主任工作藝術(shù)
評論
0/150
提交評論