本書以“新生校園生活助手”Android應(yīng)用程序項目為案例,根據(jù)項目的各組成部分,進行模塊的劃分。在模塊中,根據(jù)項目功能需求,以任務(wù)的形式進行教學(xué)設(shè)計。全書共五個模塊,模塊一為基礎(chǔ)知識模塊,對Android應(yīng)用程序的基本組成、開發(fā)工具、技術(shù)資料等進行介紹;模塊二為界面設(shè)計與控制模塊,介紹了顯示界面設(shè)計與控制、界面切換及傳值等;模塊三為界面數(shù)據(jù)獲取和操作模塊,介紹了輸入界面設(shè)計與控制、界面數(shù)據(jù)更新等;模塊四為數(shù)據(jù)與文件管理模塊,介紹了數(shù)據(jù)管理、文件管理等;模塊五為服務(wù)管理和操作模塊,介紹了前臺、后臺服務(wù)管理和操作等。本書是一部“活頁式”教材,可根據(jù)實際需要靈活選擇講授內(nèi)容和順序。配套的教案、課件、任務(wù)工單模板、視頻等以電子資源方式提供,讀者可登錄華信教育資源網(wǎng)(www.hxedu.com.cn)下載。 本書適用于中高等職業(yè)院校、應(yīng)用型本科院校的Android應(yīng)用程序項目開發(fā)等相關(guān)課程的教學(xué),也可供入門級開發(fā)用戶學(xué)習(xí)。
王培剛,博士,有十多年項目開發(fā)和本科、?圃盒=虒W(xué)經(jīng)歷,主要研究方向軟件工程、軟件項目管理、服務(wù)科學(xué)。武漢工程大學(xué)期間,從事Java程序設(shè)計、JSP網(wǎng)頁開發(fā)、數(shù)據(jù)庫原理、數(shù)據(jù)結(jié)構(gòu)、軟件項目管理、管理學(xué)原理、電子商務(wù)概論、信息系統(tǒng)、創(chuàng)新創(chuàng)業(yè)等課程講授。連續(xù)兩年獲校學(xué)生評教前1%,連續(xù)三年帶領(lǐng)學(xué)生獲省級創(chuàng)新創(chuàng)業(yè)大賽一二三等獎。在湖北交通職業(yè)技術(shù)學(xué)院任職期間,從事Android移動開發(fā)技術(shù)、Java程序設(shè)計、數(shù)據(jù)庫技術(shù)及應(yīng)用、電子商務(wù)創(chuàng)新創(chuàng)業(yè)案例分析等課程講授。
目錄
模塊一 基礎(chǔ)知識模塊
第1章 Android操作系統(tǒng)及開發(fā)工具簡介 2
1.1 Android操作系統(tǒng)介紹 2
1.2 Android開發(fā)工具介紹 2
第2章 應(yīng)用程序基本組成 4
2.1 Activity 4
2.2 ContentProvider 5
2.3 BroadcastReceiver 5
2.4 Service 5
2.5 Intent 6
2.6 清單文件 6
2.7 Context 7
第3章 Android開發(fā)工具 8
3.1 Android Studio開發(fā)平臺安裝 8
3.1.1 安裝包下載 8
3.1.2 安裝 8
3.2 Android Studio開發(fā)平臺卸載 8
3.3 其他安裝說明 10
3.4 Android Studio開發(fā)平臺界面說明 10
3.5 應(yīng)用程序項目結(jié)構(gòu) 11
3.6 Android Studio布局編輯器 12
第4章 技術(shù)資料 14
4.1 Activity技術(shù)資料 14
4.1.1 聲明Activity 14
4.1.2 Activity生命周期 14
4.1.3 新建Activity 15
4.2 Activity UI界面布局 16
4.2.1 布局文件 16
4.2.2 樣式文件 16
4.2.3 界面布局 17
4.3 布局容器 18
4.3.1 約束布局(ConstraintLayout) 18
4.3.2 線性布局(LinearLayout) 21
4.3.3 幀布局(FrameLayout) 22
4.4 控件 23
4.4.1 文本框(TextView) 23
4.4.2 圖片框(ImageView) 25
4.4.3 輸入框(EditText) 27
4.4.4 按鈕(Button) 29
4.4.5 圖片按鈕(ImageButton) 31
4.4.6 單選按鈕組(RadioGroup)和單選按鈕(RadioButton) 31
4.4.7 復(fù)選框(CheckBox) 33
4.4.8 垂直滾動控件(ScrollView) 35
4.4.9 水平滾動控件(HorizontalScrollView) 36
4.4.10 下拉框(Spinner) 36
4.4.11 網(wǎng)格控件(GridView) 38
4.4.12 列表控件(ListView) 42
4.4.13 RecyclerView控件 47
4.4.14 進度條(ProgressBar) 51
4.4.15 拖動進度條(SeekBar) 53
4.5 Fragment相關(guān)技術(shù)資料 54
4.5.1 Fragment 55
4.5.2 ViewPager2控件 59
4.5.3 標(biāo)簽控件(TabLayout) 62
4.6 應(yīng)用欄技術(shù)資料 65
4.6.1 原生ActionBar 65
4.6.2 Toolbar控件 65
4.7 菜單技術(shù)資料 66
4.7.1 菜單配置文件 66
4.7.2 選項菜單(OptionMenu) 68
4.7.3 子菜單(SubMenu) 71
4.7.4 上下文菜單(ContextMenu) 72
4.7.5 彈出菜單(PopupMenu) 74
4.8 對話框和提示框技術(shù)資料 75
4.8.1 對話框(Dialog) 76
4.8.2 消息提示框(Toast) 81
4.9 ContentProvider數(shù)據(jù)共享技術(shù)資料 81
4.9.1 聲明ContentProvider 82
4.9.2 Uri統(tǒng)一資源標(biāo)識符 82
4.9.3 ContentProvider使用形式 83
4.9.4 ContentResolver 85
4.9.5 ContentObserver 86
4.10 BroadcastReceiver廣播技術(shù)資料 87
4.10.1 聲明BroadcastReceiver 87
4.10.2 自定義廣播 88
4.10.3 發(fā)送廣播 88
4.10.4 接收廣播 90
4.10.5 系統(tǒng)廣播 91
4.11 Service服務(wù)技術(shù)資料 92
4.11.1 聲明Service 92
4.11.2 后臺服務(wù) 92
4.11.3 綁定服務(wù) 94
4.11.4 前臺服務(wù) 96
4.11.5 IntentService 99
4.12 Intent信息交互機制技術(shù)資料 100
4.12.1 配置Component 100
4.12.2 配置Action 100
4.12.3 配置Data和Type 101
4.12.4 配置Category 102
4.12.5 配置Extra 103
4.12.6 啟動組件 103
4.12.7 傳遞和接收數(shù)據(jù) 105
4.12.8 隱式配置Intent 105
4.13 Android多線程技術(shù)資料 105
4.13.1 Thread 106
4.13.2 Handler 107
4.14 Android數(shù)據(jù)存儲技術(shù)資料 109
4.14.1 SharePreference輕量級存儲對象 109
4.14.2 SQLite數(shù)據(jù)庫 111
4.15 Android文件技術(shù)資料 114
4.15.1 文件操作權(quán)限配置 114
4.15.2 文件存儲空間 114
4.15.3 文件路徑 115
4.15.4 文件資源或路徑的獲取 116
4.15.5 文件讀取和保存 117
4.16 Notification通知技術(shù)資料 121
4.16.1 通知顯示方式 121
4.16.2 標(biāo)準(zhǔn)通知 121
4.16.3 自定義通知 124
4.17 Android網(wǎng)絡(luò)通信技術(shù)資料 125
4.17.1 JSON 126
4.17.2 HttpsURLConnection 126
4.17.3 OkHttp 130
4.17.4 Retrofit 132
模塊二 界面設(shè)計與控制模塊
第5章 顯示界面設(shè)計與控制 136
5.1 任務(wù)1:首界面 136
5.1.1 設(shè)計首界面布局 136
5.1.2 六模塊入口控制 140
5.1.3 登錄和注冊入口控制 142
5.2 任務(wù)2:美食模塊主界面 143
5.2.1 設(shè)計美食模塊主界面布局 143
5.2.2 美食顯示 145
5.2.3 分類下拉框 146
5.2.4 美食按名稱搜索 147
5.3 任務(wù)3:美食詳細(xì)介紹界面 148
5.3.1 設(shè)計美食詳細(xì)介紹界面布局 149
5.3.2 美食詳細(xì)信息顯示 150
5.4 任務(wù)4:社團模塊主界面 151
5.4.1 設(shè)計社團模塊主界面布局 152
5.4.2 社團相關(guān)信息界面入口控制 153
5.5 任務(wù)5:社團介紹界面 155
5.5.1 設(shè)計社團介紹界面布局 155
5.5.2 社團介紹顯示 156
5.5.3 社團按名稱搜索 159
5.6 任務(wù)6:社團通知界面 160
5.6.1 設(shè)計社團通知界面布局 160
5.6.2 社團通知顯示 161
5.6.3 社團通知按名稱搜索 165
5.7 任務(wù)7:社團新聞界面 166
5.7.1 設(shè)計社團新聞界面布局 166
5.7.2 社團新聞顯示 167
5.7.3 社團新聞按名稱搜索 170
5.8 任務(wù)8:院系模塊主界面 171
5.8.1 設(shè)計院系模塊主界面布局 172
5.8.2 各院系內(nèi)容點擊顯示 173
5.9 任務(wù)9:公路與軌道學(xué)院Fragment 175
5.9.1 設(shè)計公路與軌道學(xué)院Fragment布局 175
5.9.2 各內(nèi)容界面滑動顯示 176
模塊三 界面數(shù)據(jù)獲取和操作模塊
第6章 界面數(shù)據(jù)獲取和操作 180
6.1 任務(wù)1:登錄界面 180
6.1.1 設(shè)計登錄界面布局 180
6.1.2 登錄控制 182
6.1.3 注冊入口控制 184
6.2 任務(wù)2:注冊界面 185
6.2.1 設(shè)計注冊界面布局 185
6.2.2 注冊控制 187
6.3 任務(wù)3:數(shù)據(jù)管理首界面 189
6.3.1 設(shè)計數(shù)據(jù)管理首界面布局 190
6.3.2 數(shù)據(jù)管理首界面控制 191
6.4 任務(wù)4:新生指南數(shù)據(jù)管理界面 194
6.4.1 設(shè)計新生指南數(shù)據(jù)管理界面布局 194
6.4.2 新生指南數(shù)據(jù)管理界面控制 195
6.5 任務(wù)5:入學(xué)流程數(shù)據(jù)管理Fragment 197
6.5.1 設(shè)計入學(xué)流程數(shù)據(jù)管理Fragment布局 197
6.5.2 入學(xué)流程數(shù)據(jù)管理Fragment控制 198
6.6 任務(wù)6:社團活動數(shù)據(jù)管理界面 200
6.6.1 設(shè)計社團活動數(shù)據(jù)管理界面布局 200
6.6.2 社團活動數(shù)據(jù)管理子模塊點擊顯示 201
6.7 任務(wù)7:社團介紹數(shù)據(jù)管理Fragment 203
6.7.1 設(shè)計社團介紹數(shù)據(jù)管理Fragment布局 203
6.7.2 社團介紹數(shù)據(jù)管理Fragment控制 204
6.8 任務(wù)8:社團介紹數(shù)據(jù)添加Fragment 205
6.8.1 設(shè)計社團介紹數(shù)據(jù)添加Fragment布局 206
6.8.2 社團介紹數(shù)據(jù)添加Fragment控制 207
6.9 任務(wù)9:出行介紹數(shù)據(jù)管理界面 209
6.9.1 設(shè)計出行介紹數(shù)據(jù)管理界面布局 209
6.9.2 出行介紹數(shù)據(jù)管理界面控制 210
6.9.3 出行介紹數(shù)據(jù)按名稱搜索 216
6.10 任務(wù)10:出行介紹數(shù)據(jù)添加界面 217
6.10.1 設(shè)計出行介紹數(shù)據(jù)添加界面布局 217
6.10.2 出行介紹數(shù)據(jù)添加界面控制 220
模塊四 數(shù)據(jù)與文件管理模塊
第7章 數(shù)據(jù)管理 223
7.1 任務(wù)1:本地數(shù)據(jù)管理(SQLite數(shù)據(jù)庫) 223
7.1.1 建立SQLite數(shù)據(jù)庫 223
7.1.2 建立相關(guān)表 224
7.1.3 添加樣本數(shù)據(jù) 224
7.1.4 查詢樣本數(shù)據(jù) 225
7.2 任務(wù)2:網(wǎng)絡(luò)數(shù)據(jù)管理(服務(wù)器) 225
7.2.1 連接服務(wù)器 225
7.2.2 添加樣本數(shù)據(jù) 226
7.2.3 查詢樣本數(shù)據(jù) 227
第8章 文件管理 229
8.1 任務(wù)1:文件保存(本地) 229
8.1.1 讀取文件 229
8.1.2 保存文件 230
8.2 任務(wù)2:文件保存(上傳) 231
8.2.1 讀取文件 232
8.2.2 上傳文件 233
模塊五 服務(wù)管理和操作模塊
第9章 前臺服務(wù)管理和操作 236
9.1 任務(wù)1:學(xué)習(xí)資料數(shù)據(jù)管理界面 236
9.1.1 設(shè)計學(xué)習(xí)數(shù)據(jù)管理界面布局 236
9.1.2 學(xué)習(xí)資料數(shù)據(jù)管理界面控制 237
9.1.3 學(xué)習(xí)資料按名稱搜索 242
9.2 任務(wù)2:學(xué)習(xí)資料上傳界面 243
9.2.1 設(shè)計學(xué)習(xí)資料上傳界面布局 243
9.2.2 學(xué)習(xí)資料上傳界面控制 245
9.3 任務(wù)3:學(xué)習(xí)音頻播放界面 248
9.3.1 設(shè)計學(xué)習(xí)音頻播放界面布局 249
9.3.2 設(shè)置學(xué)習(xí)音頻播放通知 250
9.3.3 設(shè)置學(xué)習(xí)音頻BroadcastReceiver 253
9.3.4 設(shè)置學(xué)習(xí)音頻播放前臺服務(wù) 254
9.3.5 學(xué)習(xí)音頻播放界面控制 257
第10章 后臺服務(wù)管理和操作 262
10.1 任務(wù)1:應(yīng)用程序關(guān)閉時處理操作 262
10.1.1 新建應(yīng)用程序關(guān)閉時處理操作的后臺服務(wù) 262
10.1.2 聲明應(yīng)用程序關(guān)閉時處理操作的Service 263
10.1.3 啟動應(yīng)用程序關(guān)閉時處理操作的后臺服務(wù) 263
10.2 任務(wù)2:下載操作 263
10.2.1 新建下載操作后臺服務(wù) 264
10.2.2 聲明下載操作Service 265
10.2.3 啟動下載操作后臺服務(wù) 265