Android/OPhone開發(fā)完全講義
-
【作 者】李寧
【I S B N 】978-7-5084-7527-1
【責(zé)任編輯】宋俊娥
【適用讀者群】科技
【出版時(shí)間】2010-06-08
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁(yè) 數(shù)】
【千字?jǐn)?shù)】896
【印 張】29.5
【定 價(jià)】¥58
【叢 書】暫無(wú)分類
【備注信息】贈(zèng)1CD
簡(jiǎn)介
本書特色
前言
章節(jié)列表
精彩閱讀
下載資源
相關(guān)圖書
本書是國(guó)內(nèi)第一本同時(shí)介紹Android和OPhone的經(jīng)典著作,國(guó)內(nèi)著名Android社區(qū)eoeandroid極力推薦。
本書內(nèi)容全面,詳細(xì)講解Android框架、Android用戶接口、Android組件、Android的數(shù)據(jù)存儲(chǔ)解決方案、Android的4種可跨平臺(tái)通信的組件(Activity、Service、Broadcast和ContentProvider)、網(wǎng)絡(luò)、繪圖、多媒體、2D動(dòng)畫、OpenGL ES、資源、國(guó)際化、訪問Android手機(jī)的硬件、實(shí)時(shí)壁紙、實(shí)時(shí)文件夾、NDK(利用C/C++開發(fā)可運(yùn)行在Android上的應(yīng)用程序)、腳本語(yǔ)言(Python、Lua、Perl等)、手勢(shì)輸入、文字語(yǔ)音轉(zhuǎn)換(TTS)、藍(lán)牙及OPhone平臺(tái)的技術(shù)。除此之外,在OFhone平臺(tái)中內(nèi)嵌了一種新的SDK:JIL Widget。這種技術(shù)可以只使用HTML、CSS、JavaScript等Web技術(shù)來編寫可運(yùn)行在OPhone上的程序。為了使讀者更早進(jìn)入實(shí)戰(zhàn)階段,在本書的最后給出了兩個(gè)完整的例子:“萬(wàn)年歷”和“知道當(dāng)前位置的Google GTalk機(jī)器人”。
本書適合有一定的Java基礎(chǔ),想通過Android進(jìn)入移動(dòng)開發(fā)領(lǐng)域的讀者:已經(jīng)有一定的Android開發(fā)經(jīng)驗(yàn),想進(jìn)一步提高Android的開發(fā)能力的讀者;想將本書作為Android的參考手冊(cè),隨時(shí)隨地查閱的讀者;對(duì)Android報(bào)有濃厚興趣的其他手機(jī)平臺(tái)的開發(fā)人員;正在學(xué)習(xí)Android的在校大學(xué)生以及培訓(xùn)學(xué)校的學(xué)員。
1、國(guó)內(nèi)覆蓋面最廣的Android開發(fā)指南
2、國(guó)內(nèi)第一本同時(shí)涉及Android和OPhone技術(shù)的參考手冊(cè)
3、全書貫穿Android 1.5至Android 2.1五大Android版本的重要特性
4、超過200個(gè)實(shí)際案例,提供完美的實(shí)戰(zhàn)環(huán)境
5、大量有價(jià)值的代碼可以直接用于實(shí)際的項(xiàng)目
6、一線開發(fā)人員傾力之作,使全書的內(nèi)容更接近實(shí)戰(zhàn)
7、完整的綜合應(yīng)用案例,理論與實(shí)戰(zhàn)相結(jié)合
2009年對(duì)于中國(guó)的移動(dòng)互聯(lián)網(wǎng)領(lǐng)域是最重要的一年,因?yàn)檫@一年信息產(chǎn)業(yè)部向中國(guó)三大運(yùn)營(yíng)商(移動(dòng)、聯(lián)通、電信)發(fā)放了3G牌照。這就意味著中國(guó)移動(dòng)互聯(lián)網(wǎng)3G時(shí)代已經(jīng)到來,因此,2009年也就成為了中國(guó)移動(dòng)互聯(lián)網(wǎng)3G時(shí)代的元年。
隨著中國(guó)移動(dòng)互聯(lián)網(wǎng)3G時(shí)代的到來,很多搶眼的詞匯也不斷沖擊著人們的眼球。3G、Android、Ophone、iPhone、iPad、iPod touch、Google、蘋果、HTC、G1、G2、G3等詞匯在各大網(wǎng)站的新聞和評(píng)論中頻繁出現(xiàn)。出現(xiàn)這種情況的原因只有一個(gè),那就是智能手機(jī)和移動(dòng)互聯(lián)網(wǎng)終于修成成果,成為完美的一對(duì)。
智能手機(jī)雖然早在多年前就已出現(xiàn),但那時(shí)的智能手機(jī)的功能主要是本地應(yīng)用,這些手機(jī)以Nokia的Symbian系統(tǒng)為主。但隨著移動(dòng)互聯(lián)網(wǎng)時(shí)代的到來,本地應(yīng)用已遠(yuǎn)遠(yuǎn)無(wú)法滿足用戶的需求了。然而在創(chuàng)新為王的今天,新的技術(shù)總在不斷地取代久的技術(shù)。以創(chuàng)新聞名的Google為了進(jìn)軍移動(dòng)廣告市場(chǎng),早在2005年,就開始研制新的移動(dòng)操作系統(tǒng),這也就是我們現(xiàn)在熟知的Android。經(jīng)過2年多的研發(fā),終于在2007年11月5日發(fā)布了Android的第一個(gè)版本:Android 1.0,而HTC(宏達(dá)電)也在10個(gè)月后發(fā)布了世界上第一部裝有Android系統(tǒng)的手機(jī):G1。這也標(biāo)志著Android正式成為移動(dòng)操作系統(tǒng)大家族的成員,而且出身名門。
自從Android問世以來,不斷有新的運(yùn)營(yíng)商、終商廠商、瀏覽器廠商、軟件廠商等加入Android陣營(yíng),通過合作以及不斷地創(chuàng)新,推出了大量基于Android的新產(chǎn)品,例如,Adobe公司已推出Android版的AIR和Flash10,并且Google宣布在Android 2.2中將會(huì)全面支持Flash,這就意味著可以使用Flash來編寫Android應(yīng)用程序了。
Android是Google進(jìn)軍移動(dòng)領(lǐng)域最具殺傷力的武器之一。在此之前,蘋果推出的iPhone在智能手機(jī)和移動(dòng)互聯(lián)網(wǎng)領(lǐng)域刮起了首輪風(fēng)暴。并且贏得了數(shù)以百萬(wàn)計(jì)的忠實(shí)“粉絲”。而Android與iPhone不同。iPhone與蘋果以往的產(chǎn)品相同,都是在封閉狀態(tài)下發(fā)展的,而且限制太多。Android則在這方面有著絕對(duì)的優(yōu)勢(shì),Android不僅免費(fèi),而且開源,并且Google沒有限制使用什么語(yǔ)言或技術(shù)在Android上開發(fā)軟件。這就意味著任何企業(yè)、組織和個(gè)人都可以使用Android系統(tǒng),而且不需要付給Google一分錢。正是因?yàn)檫@一點(diǎn),支持Android的終端廠商不斷增加,這也使Android的市場(chǎng)占用率節(jié)節(jié)攀升。甚至在2010年第1季度,Android在美國(guó)的占有率首次超過iPhone,成為占有率第2的移動(dòng)操作系統(tǒng)。
在與美國(guó)相隔萬(wàn)里的中國(guó),Android也受到相當(dāng)?shù)年P(guān)注和重用。國(guó)內(nèi)不僅在短時(shí)間內(nèi)涌現(xiàn)了大量的Android社區(qū)(中國(guó)移動(dòng)開發(fā)者社區(qū)、eoeandroid等),而且很多運(yùn)營(yíng)商和企業(yè)也以Android為基礎(chǔ)開發(fā)出了很多定制的移動(dòng)操作系統(tǒng)。其中國(guó)內(nèi)最早的定制Android系統(tǒng)就是中國(guó)移動(dòng)和播思通訊聯(lián)合開發(fā)的Ophone系統(tǒng),也稱為OMS。除此之外,還有聯(lián)想的樂Phone。聯(lián)通和電信也在研發(fā)自己的定制Android系統(tǒng)。這些充分證明了Android在世界上的幾個(gè)主要市場(chǎng)(中國(guó)、美國(guó)等)都已成為競(jìng)相追逐的梅花鹿,在可預(yù)期的未來,將會(huì)在全球范圍內(nèi)上演一場(chǎng)群雄逐鹿的大戲。
既然Android無(wú)論在國(guó)內(nèi)還是國(guó)外都是如此的火暴,如此的重要,那么做為開發(fā)人員的我們是不是應(yīng)該立刻開始學(xué)習(xí)Android呢?如果您正在閱讀本書的前言,那么說明您已經(jīng)給出了肯定的答案,而本書正是打開Android神秘大門的鑰匙。有了這把鑰匙,就可以盡享Android中的寶藏。那么我們還等什么呢?Let’s go. 現(xiàn)在就讓我們繼續(xù)閱讀本書的精彩內(nèi)容,以獲取更多的寶藏吧!
編 者
2010年5月
如何使用本書的例子
第一部分 準(zhǔn)備篇——大軍未動(dòng),糧草先行
第1章 Android入門 2
1.1 Android的基本概念 2
1.1.1 Android簡(jiǎn)介 2
1.1.2 Android的系統(tǒng)構(gòu)架 4
1.2 Android開發(fā)環(huán)境的搭建 5
1.2.1 開發(fā)Android程序需要些什么 5
1.2.2 安裝Android SDK 5
1.2.3 安裝Eclipse插件ADT 6
1.2.4 測(cè)試ADT是否安裝成功 6
1.3 Android SDK中的常用命令行工具 8
1.3.1 啟動(dòng)和關(guān)閉ADB服務(wù)(adb start-server
和adb kill-server) 8
1.3.2 查詢當(dāng)前模擬器/設(shè)備的實(shí)例
(adb devices) 8
1.3.3 安裝、卸載和運(yùn)行程序(adb install、
adb uninstall和am) 8
1.3.4 PC與模擬器或真機(jī)交換文件(adb
pull和adb push) 9
1.3.5 Shell命令 9
1.3.6 創(chuàng)建、刪除和瀏覽AVD設(shè)備
(android) 10
1.3.7 創(chuàng)建SD卡 10
1.4 PC上的Android 10
1.4.1 Android LiveCD 11
1.4.2 AndroidX86 11
1.5 Android的學(xué)習(xí)資源 12
1.6 應(yīng)用程序商店 12
1.6.1 Android Market 12
1.6.2 Mobile Market(MM) 12
1.6.3 其他應(yīng)用程序商店 13
1.7 本章小結(jié) 13
第2章 第一個(gè)Android程序 14
2.1 編寫用于顯示當(dāng)前日期和時(shí)間的程序 14
2.1.1 新建一個(gè)Android工程 14
2.1.2 界面組件的布局 15
2.1.3 編寫實(shí)際代碼 15
2.2 調(diào)試程序 18
2.3 簽名和發(fā)布應(yīng)用程序 18
2.3.1 使用命令行方式進(jìn)行簽名 19
2.3.2 使用ADT插件方式進(jìn)行簽名 19
2.4 DDMS透視圖 20
2.5 本章小結(jié) 21
第二部分 基礎(chǔ)篇——Android世界的精彩之旅
第3章 Android應(yīng)用程序架構(gòu) 23
3.1 Android應(yīng)用程序中的資源 23
3.1.1 資源存放在哪里 23
3.1.2 資源的種類 23
3.1.3 資源的基本使用方法 24
3.2 Android的應(yīng)用程序組件 25
3.2.1 活動(dòng)(Activity)組件 25
3.2.2 服務(wù)(Service)組件 25
3.2.3 廣播接收者(Broadcast receivers)
組件 26
3.2.4 內(nèi)容提供者(Content providers)
組件 26
3.3 AndroidManifest.xml文件的結(jié)構(gòu) 26
3.4 本章小結(jié) 27
第4章 建立用戶接口 28
4.1 建立、配置和使用Activity 28
4.1.1 建立和配置Activity 28
4.1.2 Activity的生命周期 30
實(shí)例1:演示Activity的生命周期 31
4.2 視圖(View) 33
4.2.1 視圖簡(jiǎn)介 34
4.2.2 使用XML布局文件控制視圖 34
4.2.3 在代碼中控制視圖 35
實(shí)例2:混合使用XML布局文件和代碼
來控制視圖 37
4.2.4 定制組件(Widget)的三種方式 39
實(shí)例3:定制組件——帶圖像的TextView 39
實(shí)例4:定制組件——帶文本標(biāo)簽的
EditText 42
實(shí)例5:定制組件——可更換表盤的指針
時(shí)鐘 44
4.3 使用AlertDialog類創(chuàng)建對(duì)話框 49
4.3.1 AlertDialog類簡(jiǎn)介 49
4.3.2 【確認(rèn)/取消】對(duì)話框 49
實(shí)例6:創(chuàng)建詢問是否刪除文件的
【確認(rèn)/取消】對(duì)話框 50
4.3.3 帶3個(gè)按鈕的對(duì)話框 51
實(shí)例7:創(chuàng)建【覆蓋/忽略/取消】對(duì)話框 51
4.3.4 簡(jiǎn)單列表對(duì)話框 52
4.3.5 單選列表對(duì)話框 53
4.3.6 多選列表對(duì)話框 53
實(shí)例8:創(chuàng)建3種選擇省份的列表對(duì)話框 54
4.3.7 水平進(jìn)度對(duì)話框和圓形進(jìn)度對(duì)話框 58
實(shí)例9:水平進(jìn)度對(duì)話框和圓形進(jìn)度
對(duì)話框演示 58
4.3.8 自定義對(duì)話框 61
實(shí)例10:創(chuàng)建登錄對(duì)話框 61
實(shí)例11:使用Activity托管對(duì)話框 63
實(shí)例12:創(chuàng)建懸浮對(duì)話框和觸摸任何位置
都可以關(guān)閉的對(duì)話框 64
4.4 Toast和Notification 67
4.4.1 用Toast顯示提示信息框 67
4.4.2 Notification與狀態(tài)欄信息 68
4.5 菜單 70
4.5.1 創(chuàng)建選項(xiàng)菜單 70
4.5.2 設(shè)置與菜單項(xiàng)關(guān)聯(lián)的圖像和
Activity 71
4.5.3 響應(yīng)選項(xiàng)菜單項(xiàng)單擊事件的
3種方式 71
4.5.4 動(dòng)態(tài)添加、修改和刪除選項(xiàng)菜單 72
4.5.5 創(chuàng)建帶復(fù)選框和選項(xiàng)按鈕的子菜單 73
4.5.6 創(chuàng)建上下文菜單 74
4.5.7 菜單事件 75
實(shí)例13:Activity菜單、子菜單、上下文
菜單演示 75
4.6 布局 76
4.6.1 框架布局(FrameLayout) 76
實(shí)例14:霓虹燈效果的TextView 77
4.6.2 線性布局(LinearLayout) 78
實(shí)例15:利用LinearLayout將按鈕放在屏幕
的四角和中心位置 80
4.6.3 相對(duì)布局(RelativeLayout) 81
實(shí)例16:利用RelativeLayout實(shí)現(xiàn)梅花效果
的布局 81
4.6.4 表格布局(TableLayout) 82
實(shí)例17:計(jì)算器按鈕的布局 82
4.6.5 絕對(duì)布局(AbsoluteLayout) 83
4.7 本章小結(jié) 83
第5章 組件詳解 84
5.1 顯示和編輯文本的組件 84
5.1.1 顯示文本的組件:TextView 85
實(shí)例18:在TextView中顯示URL及不同
字體大小、不同顏色的文本 86
實(shí)例19:帶邊框的TextView 88
5.1.2 輸入文本的組件:EditText 89
實(shí)例20:在EditText中輸入特定的字符 90
實(shí)例21:按回車鍵顯示EditText 91
5.1.3 自動(dòng)完成輸入內(nèi)容的組件:
AutoCompleteTextView 92
5.2 按鈕與復(fù)選框組件 93
5.2.1 普通按鈕組件:Button 93
實(shí)例22:異形(圓形、五角星、螺旋形
和箭頭)按鈕 94
5.2.2 圖像按鈕組件:ImageButton 95
實(shí)例23:同時(shí)顯示圖像和文字的按鈕 96
5.2.3 選項(xiàng)按鈕組件:RadioButton 96
5.2.4 開關(guān)狀態(tài)按鈕組件:ToggleButton 97
5.2.5 復(fù)選框組件:CheckBox 97
實(shí)例24:利用XML布局文件動(dòng)態(tài)創(chuàng)建
CheckBox 98
5.3 日期與時(shí)間組件 100
5.3.1 輸入日期的組件:DatePicker 100
5.3.2 輸入時(shí)間的組件:TimePicker 100
實(shí)例25:DatePicker、TimePicker與
TextView同步顯示日期和時(shí)間 100
5.3.3 顯示時(shí)鐘的組件:AnalogClock和
DigitalClock 101
5.4 進(jìn)度條組件 102
5.4.1 進(jìn)度條組件:ProgressBar 102
5.4.2 拖動(dòng)條組件:SeekBar 103
實(shí)例26:改變ProgressBar和SeekBar
的顏色 104
5.4.3 評(píng)分組件:RatingBar 105
5.5 其他重要組件 106
5.5.1 顯示圖像的組件:ImageView 106
實(shí)例27:可顯示圖像指定區(qū)域的ImageView
組件 107
實(shí)例28:動(dòng)態(tài)縮放和旋轉(zhuǎn)圖像 108
5.5.2 列表組件:ListView 109
實(shí)例29:可以單選和多選的ListView 111
實(shí)例30:動(dòng)態(tài)添加、刪除ListView列表項(xiàng) 112
實(shí)例31:改變ListView列表項(xiàng)選中狀態(tài)
的背景顏色 115
5.5.3 封裝ListView的Activity:
ListActivity 116
實(shí)例32:使用SimpleAdapter建立復(fù)雜
的列表項(xiàng) 116
實(shí)例33:給應(yīng)用程序評(píng)分 117
5.5.4 可展開的列表組件:
ExpandableListView 120
5.5.5 下拉列表組件:Spinner 121
5.5.6 垂直滾動(dòng)視圖組件:ScrollView 123
5.5.7 水平滾動(dòng)視圖組件:
HorizontalScrollView 123
實(shí)例34:可垂直和水平滾動(dòng)的視圖 124
5.5.8 網(wǎng)格視圖組件:GridView 124
5.5.9 可循環(huán)顯示和切換圖像的組件:
Gallery和ImageSwitcher 125
5.5.10 標(biāo)簽組件:TabHost 127
5.6 本章小結(jié) 128
第6章 移動(dòng)存儲(chǔ)解決方案 129
6.1 最簡(jiǎn)單的數(shù)據(jù)存儲(chǔ)方式:
SharedPreferences 129
6.1.1 使用SharedPreferences存取數(shù)據(jù) 129
6.1.2 數(shù)據(jù)的存儲(chǔ)位置和格式 131
實(shí)例35:存取復(fù)雜類型的數(shù)據(jù) 131
6.1.3 設(shè)置數(shù)據(jù)文件的訪問權(quán)限 133
6.1.4 可以保存設(shè)置的Activity:
PreferenceActivity 134
6.2 文件的存儲(chǔ) 137
6.2.1 openFileOutput和openFileInput方法 137
實(shí)例36:SD卡文件瀏覽器 138
實(shí)例37:存取SD卡中的圖像 142
6.2.2 SAX引擎讀取XML文件的原理 143
實(shí)例38:將XML數(shù)據(jù)轉(zhuǎn)換成Java對(duì)象 144
6.4 SQLite數(shù)據(jù)庫(kù) 147
6.4.1 SQLite數(shù)據(jù)庫(kù)管理工具 147
6.4.2 創(chuàng)建數(shù)據(jù)庫(kù)和表 148
6.4.3 模糊查詢 149
6.4.4 分頁(yè)顯示記錄 149
6.4.5 事務(wù) 149
6.5 在Android中使用SQLite數(shù)據(jù)庫(kù) 149
6.5.1 SQLiteOpenHelper類與自動(dòng)
升級(jí)數(shù)據(jù)庫(kù) 150
6.5.2 SimpleCursorAdapter類與數(shù)據(jù)綁定 150
實(shí)例39:帶照片的聯(lián)系人管理系統(tǒng) 153
6.5.3 將數(shù)據(jù)庫(kù)與應(yīng)用程序一起發(fā)布 156
實(shí)例40:英文詞典 156
6.6 抽象的標(biāo)準(zhǔn)——內(nèi)容提供者
(ContentProvider) 159
實(shí)例41:將聯(lián)系人管理和英文字典集成
到自己的應(yīng)用中 160
6.7 本章小結(jié) 165
第7章 應(yīng)用程序之間的通訊 166
7.1 Intent與Activity 166
7.1.1 用Intent啟動(dòng)Activity,并在
Activity之間傳遞數(shù)據(jù) 166
7.1.2 調(diào)用其他應(yīng)用程序中的Activity(撥打
電話、瀏覽網(wǎng)頁(yè)、發(fā)Email等) 169
7.1.3 定制自己的Activity Action 172
實(shí)例42:將電子詞典的查詢功能共享成
一個(gè)Activity Action 174
7.2 接收和發(fā)送廣播 175
7.2.1 接收系統(tǒng)廣播 175
實(shí)例43:開機(jī)可自動(dòng)運(yùn)行的程序 176
實(shí)例44:收到短信了,該做點(diǎn)什么 176
實(shí)例45:顯示手機(jī)電池的當(dāng)前電量 178
7.2.2 在自己的應(yīng)用程序中發(fā)送廣播 179
實(shí)例46:接收聯(lián)系人系統(tǒng)中發(fā)送的添加
聯(lián)系人廣播 180
7.3 本章小結(jié) 181
第8章 Android服務(wù) 182
8.1 Service起步 182
8.1.1 Service的生命周期 182
8.1.2 綁定Activity和Service 185
8.1.3 在BroadcastReceiver中啟動(dòng)Service 187
8.2 系統(tǒng)服務(wù) 188
8.2.1 獲得系統(tǒng)服務(wù) 188
實(shí)例47:監(jiān)聽手機(jī)來電 189
實(shí)例48:來電黑名單 190
8.2.2 在模擬器上模擬重力感應(yīng) 191
實(shí)例49:手機(jī)翻轉(zhuǎn)靜音 192
8.3 時(shí)間服務(wù) 194
8.3.1 計(jì)時(shí)器:Chronometer 194
8.3.2 預(yù)約時(shí)間Handler 196
8.3.3 定時(shí)器Timer 197
8.3.4 在線程中更新GUI組件 198
8.3.5 全局定時(shí)器AlarmManager 200
實(shí)例50:定時(shí)更換壁紙 201
實(shí)例51:多次定時(shí)提醒 203
8.4 跨進(jìn)程訪問(AIDL服務(wù)) 205
8.4.1 什么是AIDL服務(wù) 206
8.4.2 建立AIDL服務(wù)的步驟 206
實(shí)例52:建立AIDL服務(wù) 206
實(shí)例53:傳遞復(fù)雜數(shù)據(jù)的AIDL服務(wù) 209
8.5 本章小結(jié) 213
第9章 網(wǎng)絡(luò) 214
9.1 可裝載網(wǎng)絡(luò)數(shù)據(jù)的組件 214
實(shí)例54:將網(wǎng)絡(luò)圖像裝載到ListView
組件中 215
實(shí)例55:Google圖像畫廊(Gallery) 217
9.2 WebView組件 221
9.2.1 用WebView組件瀏覽網(wǎng)頁(yè) 221
實(shí)例56:手機(jī)瀏覽器 221
9.2.2 用WebView組件裝載HTML代碼 222
實(shí)例57:將英文詞典整合到Web頁(yè)中
(JavaScript調(diào)用Java方法) 224
9.3 訪問HTTP資源 225
9.3.1 提交HTTP GET和HTTP POST
請(qǐng)求 225
9.3.2 HttpURLConnection類 227
實(shí)例58:上傳文件 228
實(shí)例59:遠(yuǎn)程Apk安裝器 231
9.3.3 調(diào)用WebService 232
實(shí)例60:通過WebService查詢產(chǎn)品信息 233
9.4 本章小結(jié) 236
第10章 多媒體 237
10.1 圖形 237
10.1.1 圖形繪制基礎(chǔ) 237
實(shí)例61:繪制基本的圖形和文本 239
10.1.2 繪制位圖 243
實(shí)例62:用兩種方式繪制位圖 243
10.1.3 設(shè)置顏色的透明度 244
實(shí)例63:可任意改變透明度的位圖 245
10.1.4 旋轉(zhuǎn)圖像 246
實(shí)例64:旋轉(zhuǎn)動(dòng)畫 246
10.1.5 扭曲圖像 247
實(shí)例65:按圓形軌跡扭曲圖像 248
10.1.6 拉伸圖像 251
實(shí)例66:拉伸圖像演示 251
10.1.7 路徑 253
實(shí)例67:沿著路徑繪制文本 256
實(shí)例68:可在圖像上繪制圖形的畫板 258
10.2 音頻和視頻 262
10.2.1 使用MediaPlayer播放MP3文件 262
10.2.2 使用MediaRecorder錄音 263
10.2.3 使用VideoView播放視頻 264
10.2.4 使用SurfaceView播放視頻 264
10.3 本章小結(jié) 265
第三部分 進(jìn)階篇——深入Android世界的腹地
第11章 2D動(dòng)畫 267
11.1 幀(Frame)動(dòng)畫 267
AnimationDrawable與幀動(dòng)畫 267
實(shí)例69:通過幀動(dòng)畫方式播放Gif動(dòng)畫 269
實(shí)例70:播放幀動(dòng)畫的子集 271
11.2 補(bǔ)間(Tween)動(dòng)畫 273
11.2.1 移動(dòng)補(bǔ)間動(dòng)畫 273
實(shí)例71:循環(huán)向右移動(dòng)的EditText與
上下彈跳的球 275
11.2.2 縮放補(bǔ)間動(dòng)畫 277
實(shí)例72:跳動(dòng)的心 277
11.2.3 旋轉(zhuǎn)補(bǔ)間動(dòng)畫 279
實(shí)例73:旋轉(zhuǎn)的星系 279
11.2.4 透明度補(bǔ)間動(dòng)畫 280
實(shí)例74:投擲炸彈 281
11.2.5 振動(dòng)效果 283
11.2.6 自定義動(dòng)畫渲染器(Interceptor) 284
11.2.7 以動(dòng)畫方式切換View的組件
ViewFlipper 285
11.3 本章小結(jié) 287
第12章 OpenGL ES編程 288
12.1 OpenGL簡(jiǎn)介 288
12.2 構(gòu)建OpenGL ES的基本開發(fā)框架 289
12.3 2D圖形繪制 290
12.3.1 多邊形 290
12.3.2 顏色 292
12.3.3 旋轉(zhuǎn) 293
12.4 3D圖形繪制 294
12.4.1 旋轉(zhuǎn)立方體 294
12.4.2 在立方體上顯示紋理 295
12.4.3 光照下的立方體 296
12.4.4 透明的立方體 298
12.5 本章小結(jié) 298
第13章 資源、國(guó)際化與自適應(yīng) 299
13.1 Android中的資源 299
13.1.1 Android怎么存儲(chǔ)資源 300
13.1.2 資源的種類 300
13.1.3 資源文件的命名 301
13.2 定義和使用資源 301
13.2.1 使用系統(tǒng)資源 301
13.2.2 字符串(String)資源 302
13.2.3 數(shù)組(Array)資源 303
13.2.4 顏色(Color)資源 305
13.2.5 尺寸(Dimension)資源 306
13.2.6 類型(Style)資源 307
13.2.7 主題(Theme)資源 308
13.2.8 繪畫(Drawable)資源 309
13.2.9 動(dòng)畫(Animation)資源 310
13.2.10 菜單(Menu)資源 310
13.2.11 布局(Layout)資源 313
13.2.12 屬性(Attribute)資源 313
實(shí)例75:改進(jìn)可顯示圖標(biāo)的IconTextView
組件 315
13.2.13 XML資源 316
13.2.14 RAW資源 317
13.2.15 ASSETS資源 317
13.3 國(guó)際化和資源自適應(yīng) 318
13.3.1 對(duì)資源進(jìn)行國(guó)際化 318
13.3.2 Locale與國(guó)際化 320
13.3.3 常用的資源配置 320
13.4 本章小結(jié) 321
第14章 訪問Android手機(jī)的硬件 322
14.1 在手機(jī)上測(cè)試硬件 322
14.1.1 安裝Android USB驅(qū)動(dòng) 322
14.1.2 在手機(jī)上測(cè)試程序 324
14.1.3 在手機(jī)上調(diào)試程序 324
14.2 錄音 325
14.3 控制手機(jī)攝像頭(拍照) 326
14.3.1 調(diào)用系統(tǒng)的拍照功能 326
14.3.2 實(shí)現(xiàn)自己的拍照Activity 328
14.4 傳感器在手機(jī)中的應(yīng)用 332
實(shí)例76:電子羅盤 333
實(shí)例77:計(jì)步器 334
14.5 GPS與地圖定位 335
14.5.1 Google地圖 336
14.5.2 用GPS定位到當(dāng)前位置 339
14.6 WIFI 340
14.7 本章小結(jié) 342
第15章 放在桌面上的小玩意 343
15.1 窗口小部件(App Widget) 343
15.1.1 在Android桌面上添加
App Widget 343
15.1.2 開發(fā)App Widget的步驟 344
實(shí)例78:數(shù)字時(shí)鐘 346
15.1.3 AppWidgetProvider類 348
15.1.4 向App Widget添加配置Activity 349
實(shí)例79:可以選擇風(fēng)格的數(shù)字時(shí)鐘 349
15.2 快捷方式 353
15.2.1 向快捷方式列表中添加快捷方式 353
15.2.2 直接將快捷方式放到桌面上 354
15.3 實(shí)時(shí)文件夾(LiveFolder) 354
15.4 本章小結(jié) 356
第16章 NDK編程 357
16.1 Android NDK簡(jiǎn)介 357
16.2 安裝、配置和測(cè)試NDK開發(fā)環(huán)境 358
16.2.1 系統(tǒng)和軟件要求 358
16.2.2 下載和安裝Android NDK 358
16.2.3 下載和安裝Cygwin 359
16.2.4 配置Android NDK的開發(fā)環(huán)境 361
16.2.5 編譯和運(yùn)行NDK自帶的例子 362
16.3 Android NDK開發(fā) 364
16.3.1 JNI接口設(shè)計(jì) 364
16.3.2 編寫Android NDK程序的步驟 365
實(shí)例80:將文件中的小寫字母轉(zhuǎn)換成
大寫字母(NDK版本) 365
16.3.3 配置Android.mk文件 367
16.3.4 Android NDK定義的變量 368
16.3.5 Android NDK定義的函數(shù) 369
16.3.6 描述模塊的變量 369
16.3.7 配置Application.mk文件 370
16.4 本章小結(jié) 371
第17章 整合Android與腳本語(yǔ)言 372
17.1 Android腳本環(huán)境簡(jiǎn)介 372
17.2 Android腳本環(huán)境安裝 373
17.3 編寫和運(yùn)行Android腳本 374
17.4 本章小結(jié) 376
第18章 Android平臺(tái)的新特性展示 377
18.1 Android平臺(tái)的新特性 377
18.1.1 Android 1.6的新特性 377
18.1.2 Android 2.0的新特性 379
18.2 Android Framework API演變 379
18.2.1 Android 1.6 Framework API的變化 379
18.2.2 Android 2.x Framework API的變化 380
18.3 實(shí)時(shí)壁紙(Live Wallpapers,
Android 2.1) 380
18.4 補(bǔ)間動(dòng)畫渲染器(Android 1.6) 387
18.4.1 Anticipate渲染器 388
18.4.2 Overshoot渲染器 388
18.4.3 Anticipate/Overshoot渲染器 388
18.4.4 Bounce渲染器 388
18.5 本章小結(jié) 389
第19章 另類的輸入輸出 390
19.1 手勢(shì)(Gesture) 390
19.1.1 創(chuàng)建手勢(shì)文件 390
19.1.2 通過手勢(shì)輸入字符串 391
19.1.3 通過手勢(shì)調(diào)用程序 393
19.1.4 編寫自己的手勢(shì)創(chuàng)建器 394
19.2 讓手機(jī)說話(TTS) 395
19.3 本章小結(jié) 396
第20章 藍(lán)牙 397
20.1 藍(lán)牙簡(jiǎn)介 397
20.2 打開和關(guān)閉藍(lán)牙設(shè)備 398
20.3 搜索藍(lán)牙設(shè)備 398
20.4 藍(lán)牙Socket 400
20.5 OBEX服務(wù)器 402
20.6 本章小結(jié) 403
第四部分 OPhone篇——進(jìn)入OPhone世界
第21章 OPhone入門 405
21.1 OPhone平臺(tái)概述 405
21.1.1 OPhone的系統(tǒng)架構(gòu) 405
21.1.2 JIL Widget的運(yùn)行環(huán)境 406
21.1.3 OPhone應(yīng)用程序展示 406
21.2 OPhone開發(fā)環(huán)境搭建 407
21.2.1 安裝ODT和WDT 407
21.2.2 測(cè)試一下ODT是否安裝成功 407
21.2.3 測(cè)試一下WDT是否安裝成功 407
21.3 在真機(jī)上調(diào)試程序 408
21.4 本章小結(jié) 410
第22章 OPhone的API擴(kuò)展 411
22.1 視頻電話 411
22.1.1 撥打視頻電話 411
22.1.2 掛斷視頻電話 411
實(shí)例81:可撥打視頻電話的程序 412
22.2 搜索API 413
22.3 本章小結(jié) 414
第23章 JIL Widget開發(fā)詳解 415
23.1 編寫第一個(gè)JIL Widget程序 415
23.2 多媒體 417
23.2.1 播放音頻 417
23.2.2 播放視頻 418
23.3 操作文件 418
23.3.1 獲得與文件相關(guān)的信息 419
23.3.2 操作文件 419
23.3.3 操作文件夾 421
23.4 獲得系統(tǒng)信息 422
23.4.1 獲得電池信息 422
23.4.2 獲得手機(jī)信號(hào)信息 423
23.4.3 獲得設(shè)備信息 424
23.4.4 獲得設(shè)備狀態(tài)信息 424
23.5 控制硬件 425
23.5.1 拍照和攝像 426
23.5.2 打電話 426
23.5.3 手機(jī)振動(dòng) 426
23.6 本章小結(jié) 427
第五部分 綜合實(shí)例篇——實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn)
第24章 萬(wàn)年歷 429
24.1 主界面設(shè)計(jì)與實(shí)現(xiàn) 429
24.1.1 萬(wàn)年歷的核心類:Calendar 429
24.1.2 日歷內(nèi)容元素的基類:
CalendarParent 431
24.1.3 繪制萬(wàn)年歷邊框:Border類 431
24.1.4 繪制周名稱:Week類 432
24.1.5 繪制日期和網(wǎng)格:Grid類 433
24.1.6 日歷視圖:CalendarView類 440
24.1.7 生成萬(wàn)年歷的主界面 442
24.2 選項(xiàng)菜單功能 443
24.2.1 切換到今天的日期 443
24.2.2 指定日期 443
24.3 可以寫日記和提醒的萬(wàn)年歷 444
24.3.1 顯示所有的記錄信息:
AllRecord類 444
24.3.2 添加和修改記錄:Record類 446
24.3.3 設(shè)置提醒時(shí)間 447
24.3.4 啟動(dòng)服務(wù) 448
24.3.5 在廣播接收器中顯示提醒界面 449
24.3.6 訪問數(shù)據(jù)庫(kù):DBService 450
24.4 本章小結(jié) 454
第25章 知道當(dāng)前位置的Google GTalk
機(jī)器人 455
25.1 GTalk的通訊協(xié)議和技術(shù) 455
25.1.1 Jabber和XMPP 455
25.1.2 XMPP客戶端庫(kù):Smack和Asmack 456
25.2 登錄GTalk:Login類 456
25.3 聯(lián)系人信息 458
25.3.1 顯示聯(lián)系人列表 458
25.3.2 監(jiān)聽聯(lián)系人是否上線 460
25.4 聯(lián)系人之間的通訊 461
25.4.1 發(fā)送聊天信息 462
25.4.2 接收聊天信息 462
25.4.3 自動(dòng)回復(fù)當(dāng)前的位置(GPS定位) 465
25.5 本章小結(jié) 466
- Android高級(jí)程序設(shè)計(jì) [主編 周雯 舒松]
- 基于Android平臺(tái)的移動(dòng)開發(fā)技術(shù) [主編 徐碩博 黃衛(wèi)東 賈雁]
- Android 應(yīng)用開發(fā)項(xiàng)目實(shí)戰(zhàn) [主編 梁 琨 朱冰鴻]
- Android開發(fā)基礎(chǔ)教程 [黃日勝 謝志偉 楊凌 楊琳芳]
- Android項(xiàng)目開發(fā)實(shí)戰(zhàn) [趙善龍 李旭東]
- Android應(yīng)用開發(fā)基礎(chǔ)教程 [主編 巫湘林]
- Java ME手機(jī)應(yīng)用程序開發(fā) [易燦 李志勇 編著]
- Android軟件應(yīng)用與實(shí)踐 [主編 梁平 高峰]
- Visual C++ & Android程序設(shè)計(jì)綜合實(shí)訓(xùn)(第二版) [主編 梁建武]
- Android開發(fā)完全講義(第三版) [李寧]
- Android開發(fā)實(shí)用教程 [主編 王建華 張偉]
- Android基礎(chǔ)教程 [余 平 張建華]
- Android 4.X手機(jī)/平板電腦程序設(shè)計(jì)入門、應(yīng)用到精通(第二版) [孫宏明 著]
- Linux/Android開發(fā)利器——ARM DS-5使用指南 [崔更申 秦興國(guó)]
- Android開發(fā)完全講義(第二版) [李寧 編著]
- Android手機(jī)/平板電腦程序開發(fā)教練 [黃彬華 編著]
- Android手機(jī)程序設(shè)計(jì)入門、應(yīng)用到精通 [孫宏明 著]
- ARM Cortex-A8嵌入式系統(tǒng)開發(fā)與實(shí)踐——WinCE與Android平臺(tái) [上海怡鼎信息科技有限公司 倪旭]
- 手機(jī)動(dòng)漫游戲設(shè)計(jì)教程 [房曉溪 編著]
- 生活經(jīng)管more>>
- 黃河海勃灣水利樞紐防凌安全運(yùn)行
- 大學(xué)生心理健康教育
- 信息系統(tǒng)管理工程師章節(jié)習(xí)題與考點(diǎn)特訓(xùn)
- 網(wǎng)絡(luò)工程師真題及沖刺卷精析(適用機(jī)考
- 網(wǎng)絡(luò)工程師32小時(shí)通關(guān)(適配第6版考綱
- 計(jì)算機(jī)基礎(chǔ)實(shí)訓(xùn)指導(dǎo)
- 用英語(yǔ)介紹中國(guó)經(jīng)典小故事
- 新概念英語(yǔ)單詞循環(huán)速記1:14天刻意練
- 新能源場(chǎng)站繼電保護(hù)傳動(dòng)作業(yè)指導(dǎo)書
- 高職院校“德技并修·三育協(xié)同”的育人
- 網(wǎng)絡(luò)規(guī)劃設(shè)計(jì)師真題及模考卷精析(適用
- 涼山脫貧地區(qū)鄉(xiāng)村治理研究
- 中國(guó)—東盟競(jìng)技體育文化共同體研究
- 數(shù)值分析
- 用英語(yǔ)介紹中國(guó)(四六級(jí)版)
- 用英語(yǔ)介紹中國(guó)(第二版)

