Android 移動應用開發 (微課版)

李維勇 劉新娥

  • 出版商: 人民郵電
  • 出版日期: 2022-05-01
  • 定價: $419
  • 售價: 7.5$314
  • 語言: 簡體中文
  • 頁數: 316
  • ISBN: 7115569673
  • ISBN-13: 9787115569677
  • 相關分類: Android
  • 立即出貨

  • Android 移動應用開發 (微課版)-preview-1
  • Android 移動應用開發 (微課版)-preview-2
Android 移動應用開發 (微課版)-preview-1

相關主題

商品描述

本書基於Android 10和Android Studio 4.1集成開發環境編寫,系統地介紹Android移動應用開發的基礎知識。

本書共14章,分別介紹了認識Android、創建Android項目、設計用戶界面、UI控件設計、Activity與Fragment、列表與適配器、菜單與對話框設計、線程間的通信與異步機制、Android本地存儲、Service與後台服務設計、BroadcastReceiver與廣播通信、ContentProvider與應用間數據共享、網絡連接與管理、Android性能分析與測試。

本書以任務貫穿全程,結構清晰、語言簡潔,易於學習,非常適合初學Android的在校學生和希望系統掌握Android編程技能的開發人員閱讀。

作者簡介

李维勇

南京信息职业技术学院网络与通信学院 副书记 副院长

副教授 系统分析师

研究方向:移动互联应用技术、云服务应用技术

中国计算机学会职业教育发展委员会委员,江苏省高校“青蓝工程”云计算技术与应用优秀教学团队成员,中国软件杯大学生软件设计大赛一等奖指导教师,俄罗斯喀山未来技能大赛移动应用开发赛项专家。

目錄大綱

目錄

第 1章 認識Android 1

1.1 Android簡介 1

1.1.1 Android的由來 1

1.1.2 Android的發展歷程 2

1.1.3 Android的應用領域 3

1.2 Android學習指導 4

1.2.1 為什麽要學習Android 4

1.2.2 Android的學習路徑 4

1.2.3 Android的學習資源 5

任務1.1 搭建Android集成開發環境 7

1.3 Android Studio使用入門 7

1.3.1 Android Studio快速入門 7

1.3.2 配置Android Studio 9

1.3.3 Android SDK升級管理 12

本章小結 13

動手實踐 13

第 2章 創建Android項目 14

任務2.1 使用向導創建Android項目 14

2.1 Android項目架構解析 16

2.1.1 Android的項目組成 16

2.1.2 項目文件解析 19

2.1.3 清單文件解析 21

任務2.2 設計App閃屏界面 22

2.2 Android資源配置與管理 23

2.2.1 資源的種類 23

2.2.2 引用資源 24

2.2.3 管理資源 26

任務2.3 托管項目至GitHub 29

2.3 Android代碼調試 30

2.3.1 Logcat與系統日誌 30

2.3.2 啟動調試 32

2.3.3 執行調試 33

本章小結 34

動手實踐 34

第3章 設計用戶界面 35

3.1 認識佈局 35

3.1.1 UI概覽 35

3.1.2 佈局規範 37

3.2 創建佈局 38

3.2.1 創建XML佈局文件 38

3.2.2 可視化界面編輯器 39

3.2.3 視圖基本屬性與事件 41

任務3.1 設計App登錄界面 43

3.3 佈局設計 43

3.3.1 線性佈局 44

3.3.2 約束佈局 45

任務3.2 設計App“我”界面 48

3.4 優化佈局 49

3.4.1 復用佈局 49

3.4.2 Layout Inspector 51

本章小結 52

動手實踐 52

第4章 UI控件設計 53

4.1 文本控件設計 53

4.1.1 控件設計基本步驟 53

4.1.2 TextView 54

4.1.3 EditText 55

4.1.4 AutoCompleteTextView和MultiAuto

CompleteTextView 56

4.2 按鈕控件設計 58

4.2.1 Button 58

4.2.2 ToggleButton 61

4.3 圖像控件設計 62

4.3.1 ImageView 62

4.3.2 ImageSwitcher 64

任務4.1 設計相冊大圖輪播界面 65

4.4 選擇控件和開關控件設計 66

4.4.1 RadioButton與RadioGroup 66

4.4.2 CheckBox 67

4.4.3 Switch 68

4.5 進度條控件設計 69

4.5.1 ProgressBar 69

4.5.2 SeekBar 70

任務4.2 設計音樂播放器播放界面 71

本章小結 71

動手實踐 72

第5章 Activity與Fragment 73

5.1 初識Activity 73

5.1.1 Activity的創建與註冊 74

5.1.2 Activity的生命周期 76

5.1.3 用戶界面的跳轉及數據傳遞 79

任務5.1 設計App註冊界面並跳轉到登錄界面 84

5.2 Fragment佈局 85

5.2.1 初識Fragment 85

5.2.2 Fragment的創建與引用 86

5.2.3 Fragment的管理 89

5.2.4 Fragment與Activity通信 93

任務5.2 設計App引導頁面 95

5.3 Intent與應用間的通信 96

5.3.1 初識Intent 96

5.3.2 Intent對象 97

5.3.3 Intent解析 100

本章小結 104

動手實踐 104

第6章 列表與適配器 106

6.1 適配器設計 106

6.1.1 初識適配器 106

6.1.2 常用適配器設計 107

6.1.3 適配器應用 114

任務6.1 設計音樂播放器歌曲列表界面 118

6.2 CardView與RecyclerView 119

6.2.1 CardView 119

6.2.2 RecyclerView 120

6.2.3 RecyclerView+SwipeRefreshLayout應用 126

任務6.2 設計App“通訊錄”界面 130

6.3 ViewPager與PagerAdapter 131

6.3.1 ViewPager 131

6.3.2 PagerAdapter 133

6.3.3 TabLayout+ViewPager+Fragment

應用 135

本章小結 139

動手實踐 139

第7章 菜單與對話框設計 140

7.1 菜單設計 140

7.1.1 初識菜單 140

7.1.2 創建菜單資源 141

7.1.3 設計選項菜單 144

7.1.4 設計側滑菜單 146

任務7.1 設計音樂播放器菜單 149

7.2 對話框設計 150

7.2.1 消息設計 150

7.2.2 對話框設計 151

7.2.3 通知設計 154

7.3 應用欄設計 159

7.3.1 初識應用欄 159

7.3.2 創建應用欄 159

7.3.3 設置應用欄 160

7.3.4 CoordinatorLayout+AppBarLayout應用 164

任務7.2 設計音樂播放器歌手詳情界面 166

本章小結 167

動手實踐 167

第8章 線程間的通信與異步機制 168

8.1 應用程序的消息處理機制 168

8.1.1 線程與單線程模型 168

8.1.2 Handler消息傳遞機制 170

8.1.3 Thread+Handler+Message應用 174

任務8.1 實現音樂播放器本地音樂的異步加載功能 177

8.2 異步任務封裝類 178

8.2.1 HandlerThread 178

8.2.2 AsyncTask 182

本章小結 186

動手實踐 186

第9章 Android本地存儲 187

9.1 SharedPreferences與PreferenceFragment 187

9.1.1 使用SharedPreferences存取數據 188

9.1.2 使用PreferenceFragment設計設置界面 189

任務9.1 設計App“通用”設置界面 196

9.2 Android文件存儲 197

9.2.1 內部文件存儲 197

9.2.2 外部文件存儲 200

9.3 SQLite數據庫存儲 204

9.3.1 SQLite與SQLiteDatabase 205

9.3.2 SQLiteOpenHelper 210

9.3.3 使用Loader異步加載數據 212

任務9.2 保存音樂播放器播放記錄 215

本章小結 216

動手實踐 216

第 10章 Service與後台服務設計 217

10.1 創建Service 217

10.1.1 初識Service 217

10.1.2 Service的創建與註冊 218

10.1.3 Service的生命周期 219

10.2 IntentService 221

10.3 綁定型Service 222

10.3.1 綁定型Service的主要用途 222

10.3.2 綁定到Service 223

10.3.3 使用Messenger通信 225

任務10.1 實現音樂播放器後台播放功能 228

10.4 Android接口定義語言 228

10.4.1 創建AIDL 228

10.4.2 實現接口 231

10.4.3 公開接口 231

10.4.4 通過IPC傳遞對象 232

10.4.5 調用IPC方法 234

本章小結 236

動手實踐 237

第 11章 BroadcastReceiver與廣播通信 238

11.1 發送與監聽廣播 238

11.1.1 初識BroadcastReceiver 238

11.1.2 創建BroadcastReceiver 239

11.1.3 註冊廣播 240

11.1.4 發送廣播 241

11.2 EventBus事件管理 242

11.2.1 EventBus的架構 242

11.2.2 EventBus的使用 243

任務11.1 實現音樂播放器後台播放的控制 245

11.3 使用App Widgets創建桌面應用 245

11.3.1 認識App Widgets 245

11.3.2 設計App Widgets佈局 246

11.3.3 實現AppWidgetProviderInfo 247

11.3.4 擴展AppWidgetProvider 248

11.3.5 聲明App Widgets 251

11.3.6 實現Configuration Activity 251

任務11.2 實現音樂播放器桌面應用 252

本章小結 253

動手實踐 253

第 12章 ContentProvider與應用間數據共享 254

12.1 訪問系統ContentProvider 254

12.1.1 初識ContentProvider 254

12.1.2 查詢ContentProvider 255

12.1.3 修改ContentProvider中的數據 257

12.2 自定義ContentProvider 258

12.2.1 自定義ContentProvider的步驟 258

12.2.2 設計數據存儲 259

12.2.3 設計內容URI 260

12.2.4 實現ContentProvider 264

12.3 存儲訪問框架 267

12.3.1 初識SAF 267

12.3.2 SAF數據模型 268

12.3.3 編寫客戶端應用 269

任務12.1 實現微信朋友圈導入本地相冊 273

12.4 使用ContentObserver監聽數據變化 274

12.4.1 初識ContentObserver 274

12.4.2 實現ContentObserver 274

12.4.3 觀察URI 274

本章小結 276

動手實踐 276

第 13章 網絡連接與管理 277

13.1 使用ConnectivityManager管理網絡 277

13.1.1 初識ConnectivityManager 277

13.1.2 網絡接入管理 278

13.1.3 監聽網絡連接狀態 280

13.2 使用HttpURLConnection訪問網絡 281

13.2.1 HTTP 281

13.2.2 HttpURLConnection的特點 283

13.2.3 創建HttpURLConnection連接 284

13.2.4 HttpURLConnection數據交換 286

任務13.1 實現音樂播放器搜索網絡音樂 290

13.3 JSON數據解析 290

13.3.1 JSON與XML對比 290

13.3.2 JSON數據結構 292

13.3.3 解析JSON 294

任務13.2 實現音樂播放器加載歌詞 301

本章小結 301

動手實踐 302

第 14章 Android性能分析與測試 303

14.1 應用性能分析 303

14.1.1 啟動Android Profiler 303

14.1.2 檢查CPU活動 304

14.1.3 查看堆和內存分配 306

14.1.4 檢查網絡流量 307

14.2 測試應用 309

14.2.1 測試概述 309

14.2.2 單元測試 310

14.2.3 界面測試 313

任務14.1 對音樂播放器基於MTC測試 315

本章小結 316

動手實踐 316