Android應用程序開發(第5版)
王向輝、吳艷霞、史長亭、馮光升
相關主題
商品描述
"本書由淺入深地介紹了Android應用程序開發的方法和技巧,內容共分12章,包括Android簡介、Android的開發環境、第一個Android程序、Kotlin語言、Android用戶界面、動畫與手勢、Android系統的生命周期、組件通信與廣播消息、後臺服務、數據存儲與訪問、Jetpack開發組件以及綜合示例設計與開發。 本書內容豐富,實用性強,既可用作高等院校信息技術學科的教材,也可供相關專業人士參考。 "
目錄大綱
目錄
第1章Android簡介1
1.1手機操作系統1
1.2Android的發展史5
1.2.1起源5
1.2.2開放手機聯盟5
1.2.3Android的版本7
1.3Android的特征14
1.4Android的體系結構15
1.5Android的開發趨勢16
1.5.1Kotlin17
1.5.2Jetpack Compose18
1.5.3Jetpack19
習題120
第2章Android的開發環境21
2.1Android Studio簡介21
2.2下載和安裝22
2.3開發工具28
2.3.1Android模擬器28
2.3.2Android調試橋31
2.3.3Android Profiler32
2.3.4Logcat33
2.3.5其他工具34
習題235
第3章第一個Android程序36
3.1創建應用程序36
3.2創建Android虛擬設備40
3.3Android項目結構44
3.3.1視圖44
3.3.2目錄和文件47
3.4核心代碼文件50
3.4.1AndroidManifest.xml50
3.4.2MainActivity.tk53
習題356
第4章Kotlin語言57
4.1Kotlin簡介57
4.1.1什麼是Kotlin57
4.1.2Android開發中的地位58
4.1.3Kotlin特性58
4.1.4Kotlin開發工具61
4.2變量與數據類型61
4.2.1變量62
4.2.2數據類型62
4.2.3類型推斷63
4.2.4集合64
4.3控制流66
4.3.1條件語句if66
4.3.2條件語句when67
4.3.3循環for69
4.3.4循環while70
4.3.5循環控制語句71
4.4函數73
4.4.1定義函數73
4.4.2具名參數和默認參數74
4.4.3可變參數74
4.4.4單表達式函數74
4.5面向對象編程75
4.5.1類與對象75
4.5.2繼承與多態78
4.5.3接口與抽象類80
4.5.4數據類82
4.5.5枚舉類84
4.5.6單例類86
4.6Kotlin 進階特性88
4.6.1空安全88
4.6.2Lambda表達式90
4.6.3集合操作91
4.6.4擴展函數93
4.6.5高階函數95
習題498第5章Android用戶界面99
5.1Jetpack Compose概述99
5.2基本概念100
5.2.1Composable函數100
5.2.2重組機制101
5.2.3狀態管理102
5.2.4狀態提升104
5.2.5Composable的生命周期105
5.2.6副作用函數106
5.3Modifier修飾符113
5.3.1作用和概念113
5.3.2鏈式調用機制113
5.3.3示例114
5.4基礎UI組件120
5.4.1Text120
5.4.2Icon122
5.4.3Image123
5.4.4TextField124
5.4.5Button125
5.4.6IconButton126
5.4.7CheckBox127
5.4.8RadioButton128
5.4.9Switch129
5.4.10Slider130
5.4.11ProgressIndicator130
5.5布局組件132
5.5.1Box132
5.5.2Row133
5.5.3Column135
5.5.4Spacer136
5.6高級組件137
5.6.1Surface137
5.6.2Card139
5.6.3Dialog140
5.6.4DropdownMenu141
5.6.5Scaffold142
5.6.6LazyColumn148
5.6.7LazyRow151
5.6.8TabRow153
5.6.9ScrollableTabRow154
習題5155
第6章動畫與手勢156
6.1動畫分類156
6.2基礎動畫API157
6.2.1animateAsState157
6.2.2updateTransition160
6.2.3InfiniteTransition162
6.2.4Animatable163
6.3動畫規格166
6.3.1spring167
6.3.2tween168
6.3.3keyframes170
6.3.4repeatable170
6.3.5infiniteRepeatable172
6.3.6snap173
6.4高級動畫API174
6.4.1AnimatedVisibility174
6.4.2AnimatedContent176
6.4.3Modifier.animate177
6.5手勢系統179
6.5.1單擊179
6.5.2拖動180
6.5.3多點觸控183
6.5.4滾動184
6.5.5指針輸入186
習題6190
第7章Android系統的生命周期191
7.1Android組件191
7.2進程和優先級192
7.3Activity生命周期194
7.3.14種狀態194
7.3.2Activity棧194
7.3.3回調函數195
7.3.4狀態保存和恢復197
7.3.5執行順序198
7.4組件生命周期199
7.4.1Service199
7.4.2Broadcast Receiver199
7.4.3Content Provider199
7.5ActivityLifeCycle示例200
7.5.1UI代碼200
7.5.2日誌代碼200
7.5.3生命周期代碼202
習題7206
第8章組件通信與廣播消息207
8.1Intent簡介207
8.1.1啟動Activity207
8.1.2Activity數據傳遞210
8.2Intent過濾器213
8.3廣播消息217
8.3.1廣播類型217
8.3.2Broadcast Receiver218
8.3.3靜態註冊219
8.3.4動態註冊220
習題8221
第9章後臺服務222
9.1Service簡介222
9.2啟動服務222
9.2.1生命周期222
9.2.2註冊和啟動224
9.2.3示例225
9.3綁定服務227
9.3.1生命周期227
9.3.2註冊和綁定229
9.3.3示例231
9.4協程233
9.4.1耗時操作233
9.4.2使用協程234
9.4.3註意事項235
9.4.4示例236
9.5遠程服務237
9.5.1進程間通信237
9.5.2AIDL238
9.5.3Parcel240
9.5.4遠程服務示例241
9.5.5遠程調用示例245
習題9247
第10章數據存儲與訪問248
10.1簡單存儲248
10.1.1SharedPreferences248
10.1.2示例249
10.2文件存儲252
10.2.1內部存儲252
10.2.2資源文件256
10.3數據庫存儲258
10.3.1SQLite數據庫258
10.3.2創建數據庫259
10.3.3數據操作262
10.4數據共享266
10.4.1簡介266
10.4.2ContentProvider267
10.4.3ContentResolver274
10.4.4示例276
習題10278
第11章Jetpack開發組件280
11.1Navigation280
11.1.1簡介280
11.1.2使用方法281
11.1.3示例1282
11.2ViewModel286
11.2.1簡介286
11.2.2生命周期287
11.2.3使用方法289
11.2.4示例2290
11.3Ktor Client292
11.3.1簡介292
11.3.2引擎292
11.3.3使用方法294
11.3.4示例3296
11.4StateFlow297
11.4.1簡介297
11.4.2使用方法298
11.4.3示例4299
11.5LifecycleScope300
11.5.1簡介300
11.5.2使用方法300
11.5.3示例5304
11.6ViewModelScope305
11.6.1簡介305
11.6.2使用方法306
11.6.3示例6306
習題11309
第12章綜合示例設計與開發310
12.1需求分析310
12.2程序設計311
12.2.1用戶界面設計311
12.2.2數據存儲設計312
12.2.3程序模塊設計313
12.3程序開發314
12.3.1工程結構314
12.3.2數據庫適配器316
12.3.3網絡數據獲取320
12.3.4Activity和導航325
12.3.5用戶界面330
附錄AUI組件函數簽名341
A.1Text341
A.2Icon342
A.3Image342
A.4TextField343
A.5Button345
A.6IconButton346
A.7CheckBox346
A.8RadioButton347
A.9Switch348
A.10Slider348
A.11ProgressIndicator349
附錄B351
B.1Box351
B.2Row351
B.3Column352
B.4Spacer352
附錄C354
C.1Surface354
C.2Card355
C.3Dialog356
C.4DropdownMenu357
C.5Scaffold359
C.6LazyColumn362
C.7LazyRow363
C.8ScrollableTabRow364
附錄DADB命令365
附錄EAndroidManifest.xml文件367







