Android移動開發(fā)基礎(chǔ)案例教程(第2版)
定 價:59.8 元
- 作者:黑馬程序員
- 出版時間:2021/10/1
- ISBN:9787115567680
- 出 版 社:人民郵電出版社
- 中圖法分類:TN929.53
- 頁碼:278
- 紙張:
- 版次:02
- 開本:16開
本書為《Android移動開發(fā)基礎(chǔ)案例教程》的升級版,是一本Android開發(fā)入門圖書。本書使用Android Studio 3.2.0作為開發(fā)工具,使用的Android系統(tǒng)版本是9.0。本書從初學(xué)者的角度出發(fā),采用案例驅(qū)動式教學(xué)方法,對Android基礎(chǔ)知識進(jìn)行深入講解。在案例設(shè)計上,本書貼合實際需求,做到把書本上的知識應(yīng)用到實際開發(fā)中,非常適合初學(xué)者學(xué)習(xí)。
本書共12章,第1~11章主要講解Android的基礎(chǔ)知識,包括Android發(fā)展歷史、Android體系結(jié)構(gòu)、開發(fā)環(huán)境搭建、常見界面布局、常見界面控件、程序活動單元、數(shù)據(jù)存儲、內(nèi)容提供者、廣播機制、服務(wù)、網(wǎng)絡(luò)編程、圖形圖像處理、多媒體應(yīng)用開發(fā)等;第12章運用了第1~11章的相關(guān)知識,開發(fā)一個仿美團(tuán)外賣的項目。通過對該項目的學(xué)習(xí),讀者可掌握實際開發(fā)技術(shù),達(dá)到理論與實際相結(jié)合的目的,成為一名合格的開發(fā)人員。
本書附有配套視頻、源代碼、教學(xué)課件等教學(xué)資源。同時為了幫助初學(xué)者更好地學(xué)習(xí)本書,作者還提供了在線答疑服務(wù)。
本書既可作為高等教育本、專科院校計算機相關(guān)專業(yè)的教材,也可作為Android開發(fā)愛好者的參考讀物。
1.黑馬程序員系列教材改版,品質(zhì)保證;
2.本書附有配套視頻、源代碼、教學(xué)課件、教學(xué)設(shè)計、教學(xué)大綱等教學(xué)資源,同時為了幫助初學(xué)者更好地學(xué)習(xí)本書中的內(nèi)容,還提供了在線答疑服務(wù)。
3.開發(fā)工具升級到Android Studio 3.2.0,新增了大量生動、有趣的案例,最后一章配套仿美團(tuán)外賣的實戰(zhàn)項目,綜合提升教學(xué)效果。
黑馬程序員,傳智播客旗下高端IT教育品種,它是由中國Java培訓(xùn)先行者張孝祥老師發(fā)起,聯(lián)合全球中文IT社區(qū)CSDN、中關(guān)村軟件園共同創(chuàng)辦的一家專業(yè)教育機構(gòu)。辦學(xué)至今,我們一直堅守著“為千萬人少走彎路而著書,為中華軟件之崛起而講課”的辦學(xué)理念,堅持培養(yǎng)軟件應(yīng)用工程師的宏偉目標(biāo),在累計培養(yǎng)的十萬余名學(xué)員中,其中90%的學(xué)員均已在北、上、廣等一線城市高薪入職。為了迎合軟件市場的需求,我們陸續(xù)開設(shè)了Java、網(wǎng)頁平面、PHP、.Net、iOS、C/C++、Android等9個專業(yè)方向的課程,并且未來將逐漸開設(shè)其他專業(yè)方向的課程。隨著傳智播客的日益壯大,除了北京總部,我們在上海、廣州、武漢、成都、深圳等地也創(chuàng)立了直營分支機構(gòu),傳智播客儼然已成為了國內(nèi)有專業(yè)口碑的IT教育機構(gòu)。
第1章 Android基礎(chǔ)入門 1
1.1 Android簡介 1
1.1.1 通信技術(shù) 1
1.1.2 Android發(fā)展歷史 2
1.1.3 Android體系結(jié)構(gòu) 3
1.1.4 Dalvik虛擬機 4
1.2 搭建Android開發(fā)環(huán)境 5
1.2.1 安裝Android Studio 5
1.2.2 創(chuàng)建模擬器 11
1.2.3 在Android Studio中下載SDK 14
1.3 開發(fā)第一個Android程序 17
1.4 Android程序結(jié)構(gòu) 20
1.5 資源的管理與使用 21
1.5.1 圖片資源 21
1.5.2 主題和樣式資源 21
1.5.3 布局資源 22
1.5.4 字符串資源 23
1.5.5 顏色資源 23
1.5.6 尺寸資源 24
1.6 程序調(diào)試 25
1.6.1 單元測試 25
1.6.2 Logcat的使用 27
1.7 本章小結(jié) 29
1.8 本章習(xí)題 30
第2章 Android常見界面布局 31
2.1 View控件 31
2.2 界面布局編寫方式 31
2.2.1 在XML布局文件中編寫布局 31
2.2.2 在Java代碼中編寫布局 32
2.3 界面布局的通用屬性 32
2.4 線性布局 34
2.4.1 線性布局LinearLayout簡介 34
2.4.2 實戰(zhàn)演練—仿動物連連看游戲
界面 35
2.5 相對布局 36
2.5.1 相對布局RelativeLayout簡介 36
2.5.2 實戰(zhàn)演練—音樂播放器界面 38
2.6 表格布局 38
2.6.1 表格布局TableLayout 38
2.6.2 實戰(zhàn)演練—計算器界面 40
2.7 幀布局 41
2.7.1 幀布局FrameLayout簡介 41
2.7.2 實戰(zhàn)演練—霓虹燈界面 42
2.8 本章小結(jié) 43
2.9 本章習(xí)題 43
第3章 Android常見界面控件 45
3.1 簡單控件的使用 45
3.1.1 TextView控件 45
3.1.2 EditText控件 47
3.1.3 Button控件 48
3.1.4 ImageView控件 51
3.1.5 RadioButton控件 52
3.1.6 CheckBox控件 54
3.1.7 Toast類 57
3.1.8 實戰(zhàn)演練—實現(xiàn)注冊界面效果 57
3.2 列表控件的使用 62
3.2.1 ListView控件的使用 62
3.2.2 常用數(shù)據(jù)適配器 62
3.2.3 實戰(zhàn)演練—購物商城 63
3.2.4 RecyclerView控件的使用 66
3.2.5 實戰(zhàn)演練—仿今日頭條推薦
列表 69
3.3 自定義控件 75
3.4 本章小結(jié) 77
3.5 本章習(xí)題 77
第4章 程序活動單元Activity 79
4.1 Activity的生命周期 79
4.1.1 生命周期狀態(tài) 79
4.1.2 生命周期方法 80
4.2 Activity的創(chuàng)建、配置、開啟和
關(guān)閉 82
4.2.1 創(chuàng)建Activity 82
4.2.2 配置Activity 84
4.2.3 啟動和關(guān)閉Activity 84
4.3 Intent與IntentFilter 84
4.3.1 Intent 85
4.3.2 IntentFilter 85
4.4 Activity之間的跳轉(zhuǎn) 86
4.4.1 Activity之間的數(shù)據(jù)傳遞 86
4.4.2 Activity之間的數(shù)據(jù)回傳 87
4.4.3 實戰(zhàn)演練—小猴子摘桃 89
4.5 任務(wù)棧和啟動模式 92
4.5.1 Android中的任務(wù)!92
4.5.2 Activity的啟動模式 93
4.6 使用Fragment 94
4.6.1 Fragment簡介 94
4.6.2 Fragment的生命周期 95
4.6.3 創(chuàng)建Fragment 96
4.6.4 在Activity中添加Fragment 97
4.6.5 實戰(zhàn)演練—仿美團(tuán)外賣菜單 98
4.7 本章小結(jié) 105
4.8 本章習(xí)題 105
第5章 數(shù)據(jù)存儲 107
5.1 數(shù)據(jù)存儲方式 107
5.2 文件存儲 108
5.2.1 將數(shù)據(jù)存入文件中 108
5.2.2 從文件中讀取數(shù)據(jù) 109
5.2.3 實戰(zhàn)演練—保存QQ賬號與
密碼 111
5.3 SharedPreferences存儲 115
5.3.1 將數(shù)據(jù)存入
SharedPreferences中 115
5.3.2 讀取與刪除
SharedPreferences中的數(shù)據(jù) 115
5.3.3 實戰(zhàn)演練—保存QQ賬號與
密碼 116
5.4 SQLite數(shù)據(jù)庫存儲 118
5.4.1 SQLite數(shù)據(jù)庫的創(chuàng)建 118
5.4.2 SQLite數(shù)據(jù)庫的基本操作 119
5.4.3 SQLite數(shù)據(jù)庫中的事務(wù) 121
5.4.4 實戰(zhàn)演練—綠豆通訊錄 122
5.5 本章小結(jié) 125
5.6 本章習(xí)題 125
第6章 內(nèi)容提供者和內(nèi)容觀察者 127
6.1 內(nèi)容提供者概述 127
6.2 創(chuàng)建內(nèi)容提供者 128
6.3 訪問其他應(yīng)用程序 130
6.3.1 查詢其他程序的數(shù)據(jù) 130
6.3.2 實戰(zhàn)演練—讀取手機通訊錄 131
6.4 內(nèi)容觀察者 138
6.4.1 什么是內(nèi)容觀察者 138
6.4.2 實戰(zhàn)演練—監(jiān)測數(shù)據(jù)變化 139
6.5 本章小結(jié) 146
6.6 本章習(xí)題 146
第7章 廣播機制 148
7.1 廣播機制的概述 148
7.2 廣播接收者 149
7.2.1 什么是廣播接收者 149
7.2.2 創(chuàng)建廣播接收者 149
7.3 自定義廣播與廣播的類型 152
7.3.1 自定義廣播 152
7.3.2 實戰(zhàn)演練—飯?zhí)眯V播 152
7.3.3 廣播的類型 155
7.3.4 實戰(zhàn)演練—數(shù)鴨子 156
7.4 本章小結(jié) 163
7.5 本章習(xí)題 163
第8章 服務(wù) 165
8.1 服務(wù)概述 165
8.2 服務(wù)的創(chuàng)建 166
8.3 服務(wù)的生命周期 166
8.4 服務(wù)的啟動方式 167
8.4.1 調(diào)用startService()方法啟動
服務(wù) 167
8.4.2 調(diào)用bindService()方法啟動
服務(wù) 171
8.5 服務(wù)的通信 174
8.5.1 本地服務(wù)通信和遠(yuǎn)程服務(wù)通信 175
8.5.2 實戰(zhàn)演練—仿網(wǎng)易音樂播
放器 175
8.6 本章小結(jié) 181
8.7 本章習(xí)題 182
第9章 網(wǎng)絡(luò)編程 183
9.1 通過HTTP訪問網(wǎng)絡(luò) 183
9.1.1 HTTP協(xié)議通信簡介 183
9.1.2 使用HttpURLConnection
訪問網(wǎng)絡(luò) 184
9.2 使用WebView控件進(jìn)行網(wǎng)絡(luò)開發(fā) 185
9.2.1 使用WebView控件瀏覽網(wǎng)頁 185
9.2.2 使用WebView控件執(zhí)行HTML
代碼 187
9.2.3 設(shè)置WebView控件支持
JavaScript代碼 188
9.3 JSON數(shù)據(jù)解析 190
9.3.1 JSON數(shù)據(jù) 191
9.3.2 JSON解析 192
9.3.3 實戰(zhàn)演練—仿拼多多砍價
界面 195
9.4 Handler消息機制 202
9.5 本章小結(jié) 204
9.6 本章習(xí)題 204
第10章 圖形圖像處理 205
10.1 常用的繪圖類 205
10.1.1 Bitmap類 205
10.1.2 BitmapFactory類 206
10.1.3 Paint類 206
10.1.4 Canvas類 207
10.1.5 實戰(zhàn)演練—繪制小狗 207
10.2 為圖像添加特效 208
10.3 動畫 211
10.3.1 補間動畫 211
10.3.2 逐幀動畫 216
10.3.3 屬性動畫 218
10.3.4 實戰(zhàn)演練—飛舞的
蝴蝶和鳥 222
10.4 本章小結(jié) 224
10.5 本章習(xí)題 224
第11章 多媒體應(yīng)用開發(fā) 225
11.1 音頻播放 225
11.1.1 使用MediaPlayer類播放音頻 225
11.1.2 使用SoundPool類播放音頻 227
11.1.3 實戰(zhàn)演練—彈鋼琴 228
11.2 視頻播放 231
11.2.1 使用VideoView控件播放視頻 231
11.2.2 實戰(zhàn)演練—VideoView視頻
播放器 232
11.2.3 使用MediaPlayer類和
SurfaceView控件播放視頻 233
11.2.4 實戰(zhàn)演練—SurfaceView
視頻播放器 234
11.3 本章小結(jié) 239
11.4 本章習(xí)題 239
第12章 綜合項目—仿美團(tuán)外賣 240
12.1 項目分析 240
12.1.1 項目概述 240
12.1.2 開發(fā)環(huán)境 240
12.1.3 模塊說明 241
12.2 效果展示 241
12.2.1 店鋪列表界面 241
12.2.2 店鋪詳情界面 241
12.2.3 菜品詳情界面 242
12.2.4 訂單界面 243
12.3 服務(wù)器數(shù)據(jù)準(zhǔn)備 243
12.4 店鋪功能業(yè)務(wù)實現(xiàn) 245
12.4.1 搭建標(biāo)題欄布局 245
12.4.2 搭建廣告欄界面布局 246
12.4.3 搭建店鋪列表界面布局 248
12.4.4 搭建店鋪列表條目界面布局 249
12.4.5 封裝店鋪信息與菜品信息的
實體類 250
12.4.6 編寫廣告欄的數(shù)據(jù)適配器 252
12.4.7 編寫店鋪列表的數(shù)據(jù)適配器 255
12.4.8 實現(xiàn)店鋪列表界面顯示功能 256
12.5 店鋪詳情功能業(yè)務(wù)實現(xiàn) 261
12.5.1 搭建店鋪詳情界面布局 262
12.5.2 搭建菜單列表條目界面布局 264
12.5.3 搭建購物車列表條目界面
布局 265
12.5.4 搭建確認(rèn)清空購物車界面
布局 266
12.5.5 編寫菜單列表的數(shù)據(jù)適配器 267
12.5.6 編寫購物車列表的數(shù)據(jù)適配器 269
12.5.7 實現(xiàn)菜單顯示與購物車功能 271
12.6 菜品詳情功能業(yè)務(wù)實現(xiàn) 271
12.6.1 搭建菜品詳情界面布局 271
12.6.2 實現(xiàn)菜品詳情界面顯示功能 272
12.7 訂單功能業(yè)務(wù)實現(xiàn) 273
12.7.1 搭建訂單界面布局 273
12.7.2 搭建訂單列表條目界面布局 274
12.7.3 搭建支付界面布局 275
12.7.4 編寫訂單列表的數(shù)據(jù)適配器 275
12.7.5 實現(xiàn)訂單顯示與支付功能 277
12.8 本章小結(jié) 278