Android高級程序設計

-
【作 者】主編 周雯 舒松
【I S B N 】978-7-5170-8413-6
【責任編輯】周益丹
【適用讀者群】本專通用
【出版時間】2020-03-01
【開 本】16開
【裝幀信息】平裝(光膜)
【版 次】第1版第1次印刷
【頁 數】276
【千字數】384
【印 張】17.25
【定 價】¥49
【叢 書】高等職業教育物聯網應用技術專業教材
【備注信息】
簡介
本書特色
前言
章節列表
精彩閱讀
下載資源
相關圖書
本書是關于Android 開發的實戰教程,內容安排由淺入深、從基礎到高級,內容講解采用了Android Studio 3.1 開發環境。全書共分為11 章,涵蓋Android Studio 的開發環境搭建,Android 控件的使用、四大組件的使用、消息處理機制與異步任務開發、位置和傳感器、網絡編程等內容。
本書通俗易懂、案例豐富,不僅適用于Android 開發的廣大從業人員、APP 開發的業余愛好者,也可作為高職院校與培訓機構的Android 課程教材。
本書配有電子課件,讀者可以從中國水利水電出版社網站(www.waterpub.com.cn)或萬水書苑網站(www.dgboyong.cn)免費下載。
物聯網技術目前炙手可熱,其主要產品是智能家居、智能車載、智能機器人等。Android是一款功能強大的操作系統,已經被全球市場上的大量智能手機、平板電腦和嵌入式系統所采用。如果物聯網設備采用Android操作系統,那么物聯網App開發人員可以輕松地將操作系統與許多第三方App和嵌入式系統相結合。本書從初學者的角度出發,通過通俗易懂的語言、豐富的案例,幫助讀者理解每一個知識點在實際項目中的應用,同時通過不斷更新的GitHub案例資源,幫助讀者持續提高技術水平。本書可作為高職院校計算機相關專業Android課程的教材,也可作為Android從業人員的參考用書。
本書共11章,第1章介紹Android入門知識以及Android Studio的安裝方法;第2章介紹常用調試工具;第3章介紹Android UI開發;第4章介紹四大組件中最重要的Activity;第5章介紹消息處理機制與異步任務;第6章介紹BroadCast廣播機制;第7章介紹Service(服務);第8章介紹數據存儲和共享方案;第9章介紹多媒體的使用,包括二維圖形圖像處理、二維動畫處理和多媒體文件的播放方法;第10章介紹GPS定位應用開發和傳感器應用開發;第11章介紹網絡編程方法。
本書特點如下所述。
(1)語言貼近讀者。本書最大的特點是教材語言簡明,貼近讀者,符合高職院校學生學習的特點,使讀者對程序設計的邏輯結構和語法概念較易理解。
(2)實用性強。本書內容豐富、重點突出、邏輯清晰,設計了許多Android開發中極具新穎性與前沿性的應用實例。這些實例不僅涉及常用的Android開發知識的應用,還涉及了Android的特色技術—傳感器信息獲取以及定位。這些技術將區別于PC端和Web端的技術領域,是只有在移動端才能實現的功能,體現了Android開發在物聯網應用中的作用。
(3)大膽創新,立足于終身教育。本書彌補了傳統教材中電子案例資源一次編寫無法持續更新的缺陷,將教材知識點與在線GitHub項目有機結合,強調創新精神與實踐能力的培養,把理論與實踐有機結合。
(4)適合混合式教學和個性化學習。書中以二維碼的形式提供數字化教學資源,將教學資源與教材內容直接關聯,方便教師根據資源組織課題教學。教師可借助微課內容有效地向學生教授開發過程與原理。
本書由一支有著豐富的物聯網專業教學及項目開發經驗的教學團隊編寫,由周雯、舒松擔任主編,由石浪、孫嚴強和霍宏亮擔任副主編,由張紅衛教授擔任主審。具體分工如下:周雯負責確定總體方案、統稿,以及前言部分和第1、2、3、4章的編寫;石浪負責編寫第5章;霍宏亮負責編寫第6、11章;孫嚴強負責編寫第7章;舒松負責編寫第8、9、10章;張紅衛教授負責最后的審稿定稿工作。另外,喻力負責本書的案例整理工作。
編 者
2019年12月
第1章 揚帆起航—
Android入門 001
1.1 Android簡介 002
1.1.1 Android系統架構 002
1.1.2 Android開發版本 004
1.1.3 Android應用開發簡介 004
1.2 Android Studio簡介 006
1.2.1 了解Android Studio 006
1.2.2 Android Studio的新功能 006
1.2.3 安裝Android Studio 009
1.3 初識Android Studio 015
1.3.1 創建第一個工程—
Hello World 015
1.3.2 Android Studio面板簡介 021
1.3.3 Android Studio功能面板 023
1.3.4 Android Studio工程目錄
結構 024
第2章 前行必備—
掌握調試工具 026
2.1 DDMS調試 027
2.1.1 DDMS簡介 027
2.1.2 DDMS的使用 027
2.1.3 DDMS的功能概述 028
2.2 Log調試 032
2.2.1 Log簡介 032
2.2.2 Log過濾器 032
2.3 Debug調試 033
2.3.1 簡介 033
2.3.2 斷點介紹 034
2.3.3 字段斷點 035
2.3.4 方法斷點 035
2.3.5 異常斷點 035
2.3.6 條件斷點 036
第3章 看人先看臉—
Android UI開發 037
3.1 UI簡介 038
3.2 四大基本布局 038
3.2.1 線性布局(LinearLayout) 039
3.2.2 相對布局(RelativeLayout) 042
3.2.3 幀布局(FrameLayout) 046
3.2.4 網格布局(GridLayout) 048
3.3 常用UI組件 050
3.3.1 Button類型 051
3.3.2 TextField類型 053
3.3.3 CheckBox類型 058
3.4 控件監聽 060
3.4.1 對UI事件的理解 060
3.4.2 事件處理的三種方式 060
3.5 復雜控件ListView 062
3.5.1 ListView簡介 063
3.5.2 ListView的簡單用法 064
3.5.3 定制ListView界面 066
第4章 重要組件—
四大組件之Activity 070
4.1 Activity簡介 071
4.2 Activity的創建 071
4.3 使用Intent在Activity間穿梭 074
4.3.1 啟動Activity 074
4.3.2 關閉Activity 075
4.3.3 帶數據的一般啟動 076
4.3.4 啟動帶返回結果的Activity 077
4.4 Activity的生命周期管理 079
4.5 Intent(意圖) 085
4.5.1 Intent簡介 085
4.5.2 隱式Intent 085
4.5.3 更多隱式Intent的用法 087
4.6 Bundle擴展 090
4.6.1 Bundle簡介 090
4.6.2 序列化簡介 091
第5章 溝通和分布合作—
消息處理機制與異步任務 093
5.1 Android多線程編程 094
5.2 消息處理機制 095
5.2.1 Handler的使用 095
5.2.2 消息處理機制原理解析 098
5.2.3 更新UI的其他方法 099
5.3 異步任務(AsyncTask) 102
5.3.1 AsyncTask簡介 102
5.3.2 AsyncTask實現原理 102
第6章 全局大喇叭—
廣播機制 105
6.1 廣播機制簡介 106
6.1.1 廣播簡介 106
6.1.2 廣播的原理 106
6.2 廣播接收器
(BroadcastReceiver) 107
6.2.1 廣播接收器的創建 107
6.2.2 廣播接收器的動態注冊 108
6.2.3 廣播接收器的靜態注冊 110
6.3 發送廣播(BroadCast) 113
6.3.1 發送廣播的類型簡介 113
6.3.2 發送普通廣播 113
6.3.3 發送有序廣播 115
6.3.4 攔截發送廣播的消息 118
6.3.5 APP應用內的廣播 119
第7章 默默的后臺勞動者—
Service 121
7.1 Service簡介 122
7.1.1 Service是什么 122
7.1.2 Service(服務)與
Thread(線程)的區別 122
7.2 使用Service 122
7.2.1 創建Service 122
7.2.2 啟動和停止服務 125
7.2.3 綁定和解綁服務 127
7.2.4 活動和服務間的通信 131
7.3 Service的生命周期 138
7.3.1 Service的生命周期簡介 138
7.3.2 對Service的生命周期的
管理方式 139
第8章 數據持久化—
數據存儲和共享方案 140
8.1 數據存儲 141
8.1.1 文件存儲 141
8.1.2 SharedPreferences存儲 146
8.1.3 SQLite數據庫存儲 149
8.1.4 Android的Room框架 161
8.2 內容提供者和內容解析者 165
8.2.1 內容提供者
(ContentProvider) 166
8.2.2 內容解析者
(ContentResolver) 166
第9章 豐富程序—多媒體 170
9.1 二維圖形圖像處理 171
9.1.1 常用繪圖類 171
9.1.2 為圖片添加特效 174
9.2 二維動畫處理 177
9.2.1 逐幀動畫 178
9.2.2 補間動畫 180
9.3 播放多媒體文件 188
9.3.1 MediaPlayer播放音頻 188
9.3.2 VideoView播放視頻 192
第10章 Android特色開發—
位置和傳感器 199
10.1 GPS定位應用開發 200
10.1.1 定位技術簡介 200
10.1.2 GPS位置定位 201
10.1.3 申請API Key 206
10.1.4 熟悉百度定位 209
10.1.5 使用百度定位 212
10.1.6 使用百度地圖 219
10.2 傳感器應用開發 223
10.2.1 Android傳感器系統基礎 223
10.2.2 運動傳感器 227
10.2.3 運動傳感器案例——
仿微信“搖一搖”功能 229
10.2.4 位置傳感器 236
10.2.5 位置傳感器案例——
仿小米“指南針”應用 238
10.2.6 環境傳感器 242
10.2.7 環境傳感器案例——
智能家居光控系統 243
第11章 必備技能—
網絡編程 247
11.1 HTTP數據通信 248
11.1.1 HTTP介紹 248
11.1.2 URL和URLConnection 249
11.2 數據交換格式 252
11.2.1 搭建本地服務器 252
11.2.2 解析XML格式數據 257
11.2.3 解析JSON 260
11.3 Web應用程序開發 262
11.3.1 顯示第三方Web內容 263
11.3.2 嵌入Web應用 265
11.3.3 與Web應用交互 267
參考文獻 270
- C程序設計實踐教程 [劉衛國]
- C程序設計(慕課版) [劉衛國]
- 程序設計基礎實踐教程(C/C++語言版) [張桂芬 葛麗娜]
- C++案例項目精講 [主編 楊國興]
- SwiftUI完全開發 [李智威 著]
- MySQL數據庫項目式教程 [陳亞峰]
- C語言程序設計習題與實驗指導(第二版) [主編 甄增榮 張賓]
- C語言程序設計(第二版) [主編 甄增榮 田云霞]
- Unity3D虛擬現實應用開發實踐 [主 編 劉龍]
- Python程序設計 [主編 姜春磊 陳虹潔]
- C語言程序設計實踐教程(活頁式) [主編 鄭茵 陳巍 滕泓虬]
- 面向對象程序設計 [主編 張勇 張平華 趙小龍]
- Python程序設計基礎及實戰 [主編 劉健]
- C語言程序設計 [姜雪]
- Python程序設計實踐教程 [王鶴琴 蔡正保]
- C++程序設計實踐教程(第三版) [主編 劉衛國 曹岳輝]
- C++程序設計(第三版) [主編 曹岳輝 劉衛國]
- C語言程序設計項目化教程(活頁式) [主編 張利華 潘曉利]
- 機器人流程自動化(RPA)實戰——基于UiPath [主編 金鑫]
- Python 語言程序設計實踐指導 [主編 張雙獅]
- Python程序設計案例教程 [主編 毛錦庚 鐘肖英 周賢來 ]
- 基于.NET Core框架的分布式系統架構設計 [湯佳 著]
- Python語言程序設計教程 [郭其標 房宜汕]
- Python程序設計 [李國燕 王新強 劉佳 等編著]
- Python程序設計項目化教程(活頁式) [主編 盧鳳偉]
- Java編程基礎案例式教程 [主編 陳艷華 唐春蘭]
- Python語言同步案例習題精解 [主編 肖朝暉]
- Unity應用開發與實戰(微課版) [主 編 程永恒]
- PHP程序設計項目化教程 [主 編 杜海穎]
- 簡單易懂的Python入門教程 [[日]大澤文孝 著]