Android的發(fā)展趨勢(shì)
Android (安卓)是一種基于Linux的自由及開(kāi)放源代碼的操作系統(tǒng),由Google公司和開(kāi)放手機(jī)聯(lián)盟領(lǐng)導(dǎo)及開(kāi)發(fā),主要用于移動(dòng)終端設(shè)備,如市場(chǎng)上的智能手機(jī)和平板電腦。Android系統(tǒng)平臺(tái)以開(kāi)源性和豐富的可擴(kuò)展性受到用戶好評(píng),國(guó)內(nèi)擁有數(shù)量龐大的智能Android手機(jī)用戶群,手機(jī)管理軟件憑借豐富的App應(yīng)用資源下載和便捷的管理功能,成為Android手機(jī)用戶的裝機(jī)必備選擇。
大量的用戶需求使得Android App開(kāi)發(fā)仍然以源源不斷的上線方式來(lái)展現(xiàn)。從普通大眾的消費(fèi)水平以及使用習(xí)慣上看,Android App開(kāi)發(fā)的市場(chǎng)還是很廣闊的。不少游戲平臺(tái)都轉(zhuǎn)向Android手機(jī),對(duì)Android游戲App開(kāi)發(fā)將會(huì)持續(xù)增多。放眼應(yīng)用市場(chǎng),不難發(fā)現(xiàn)Android App開(kāi)發(fā)所涵蓋的類型和領(lǐng)域非常多,游戲、社交、旅游、工具等類型的應(yīng)用都有大量的Android系統(tǒng)開(kāi)發(fā)。Android開(kāi)發(fā)產(chǎn)品的數(shù)量會(huì)不斷增加,質(zhì)量也會(huì)不斷改進(jìn)。
本書(shū)的編寫安排
本書(shū)可以作為Android開(kāi)發(fā)的一本入門圖書(shū),通過(guò)理論知識(shí)與大量的案例來(lái)介紹Android應(yīng)用開(kāi)發(fā)的各方面知識(shí)。在學(xué)習(xí)本書(shū)之前,需要讀者具備Java基礎(chǔ)知識(shí),因?yàn)锳ndroid開(kāi)發(fā)使用的是Java語(yǔ)言,建議讀者先了解理論知識(shí),掌握組件的使用方式,然后通過(guò)具體的案例來(lái)達(dá)到熟練應(yīng)用。
本書(shū)共分為12章,具體如下:
第1章主要介紹Android的基礎(chǔ)知識(shí),包括Android的發(fā)展史、Android的系統(tǒng)架構(gòu)、開(kāi)發(fā)環(huán)境的搭建、第一個(gè)Android項(xiàng)目的創(chuàng)建、項(xiàng)目的文件結(jié)構(gòu)。通過(guò)這些基礎(chǔ)知識(shí)讓開(kāi)發(fā)者對(duì)Android項(xiàng)目的創(chuàng)建及目錄有一個(gè)簡(jiǎn)單的了解。
第2、3章主要介紹Android的布局以及Activity,包括Android的六大布局、各種組件的使用、AdapterView及其子類的使用、Intent的使用方式。通過(guò)這部分講解可以讓開(kāi)發(fā)者實(shí)現(xiàn)簡(jiǎn)單的用戶注冊(cè)。
第4、5章主要介紹Android的事件處理機(jī)制和Fragment,講述Android事件處理機(jī)制的方式、異步類的使用、Fragment的生命周期以及Fragment與Activity之間的通信。
第6~8章主要介紹Android的數(shù)據(jù)存儲(chǔ)、內(nèi)容提供者以及服務(wù)和廣播的使用。在這幾章中,針對(duì)每個(gè)知識(shí)點(diǎn)都通過(guò)具體的案例來(lái)講解,讓開(kāi)發(fā)者快速地掌握Android開(kāi)發(fā)的幾大組件。
第9、10章主要介紹Android的網(wǎng)絡(luò)通信編程,包括HTTP通信、Socket通信、數(shù)據(jù)提交方式以及Android+PHP開(kāi)發(fā)。這兩章通過(guò)從網(wǎng)絡(luò)下載圖片在應(yīng)用程序中的顯示來(lái)講解HTTP通信,通過(guò)搭建本地PHP開(kāi)發(fā)環(huán)境來(lái)講解Android和本地服務(wù)器的通信,讓開(kāi)發(fā)者對(duì)Android的網(wǎng)絡(luò)編程有基本的了解。
第11章主要通過(guò)具體的案例(“傾心家教”應(yīng)用案例)開(kāi)發(fā)來(lái)講解Android+PHP+MySQL的使用。本章從項(xiàng)目的需求分析、界面設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、功能實(shí)現(xiàn)來(lái)完整地講解Android項(xiàng)目的開(kāi)發(fā)流程。
第12章主要通過(guò)具體的案例(“橙一色”App項(xiàng)目案例)開(kāi)發(fā)來(lái)講解Android+Spring Boot+MySQL的使用。本章從項(xiàng)目的需求分析、界面設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)、功能實(shí)現(xiàn)來(lái)完整地講解Android前端+服務(wù)器端項(xiàng)目的完整開(kāi)發(fā)流程。
本書(shū)的配套資源
本書(shū)提供教學(xué)大綱、教學(xué)課件、電子教案、習(xí)題答案、程序源碼和教學(xué)進(jìn)度表等配套資源,本書(shū)還提供900分鐘的微課視頻。
資源下載提示
課件等資源: 掃描封底的“課件下載”二維碼,在公眾號(hào)“書(shū)圈”下載。
素材(源碼)等資源: 掃描目錄上方的二維碼下載。
視頻等資源: 掃描封底刮刮卡中的二維碼,再掃描書(shū)里章節(jié)中的二維碼,可以在線學(xué)習(xí)。
致謝
本書(shū)的編寫由蘭紅、王建雄、井福榮共同完成。特別感謝李志軍、朱合隆、方治嶼同學(xué),“傾心家教”和“橙一色”App項(xiàng)目案例均為大學(xué)生創(chuàng)新項(xiàng)目作品,目前已投入使用。感謝徐民霖、李浩瀚、王坤、朱純煜等同學(xué)對(duì)文稿的校對(duì),衷心感謝支持本書(shū)出版的各位領(lǐng)導(dǎo)和同事,感謝為本書(shū)順利出版做出努力的清華大學(xué)出版社。
意見(jiàn)反饋
本書(shū)代碼基于Android 8.0版本,在Android Studio上驗(yàn)證通過(guò)。由于水平有限,書(shū)中難免存在疏漏之處,請(qǐng)廣大讀者批評(píng)指正。
作者
2020年7月
第1章Android入門
1.1Android概述
1.1.1無(wú)線通信技術(shù)
1.1.2Android基本介紹
1.1.3Android系統(tǒng)架構(gòu)
1.2搭建Android開(kāi)發(fā)環(huán)境
1.3開(kāi)發(fā)第一個(gè)Android程序
1.3.1創(chuàng)建與運(yùn)行第一個(gè)HelloWorld程序
1.3.2學(xué)習(xí)項(xiàng)目文件
1.3.3Android項(xiàng)目結(jié)構(gòu)
1.3.4AndroidManifest.xml詳解
1.4【項(xiàng)目案例1】“橙一色”App項(xiàng)目創(chuàng)建
1.5本章小結(jié)
1.6課后習(xí)題
第2章Android應(yīng)用界面
2.1View概念
2.2布局管理器
2.2.1創(chuàng)建和使用布局文件
2.2.2布局的類型
2.3Android控件詳解
2.3.1TextView
2.3.2EditText
2.3.3Button
2.3.4ImageView
2.3.5RadioButton和CheckBox
2.3.6ProgressBar
2.3.7SeekBar
2.4AdapterView及其子類
2.4.1ListView和ListActivity
2.4.2Adapter接口
2.5對(duì)話框的使用
2.6Toast的使用
2.7Log的使用
2.8用戶注冊(cè)案例布局講解
2.9【項(xiàng)目案例2】“橙一色”App注冊(cè)/登錄界面設(shè)計(jì)
2.10本章小結(jié)
2.11課后習(xí)題
第3章Activity
3.1Activity基礎(chǔ)
3.1.1認(rèn)識(shí)Activity
3.1.2如何創(chuàng)建Activity
3.1.3Activity的生命周期
3.1.4Activity中的單擊事件
3.2Intent的使用
3.2.1Intent淺析
3.2.2顯式Intent
3.2.3隱式Intent
3.3Activity中的數(shù)據(jù)傳遞方式
3.4用戶注冊(cè)案例功能實(shí)現(xiàn)
3.5本章小結(jié)
3.6課后習(xí)題
第4章Android事件處理
4.1Android事件處理機(jī)制
4.2基于監(jiān)聽(tīng)的事件處理
4.3基于回調(diào)的事件處理
4.4AnsyncTask異步類的功能與用法
4.5【項(xiàng)目案例3】“橙一色”App注冊(cè)驗(yàn)證
4.6本章小結(jié)
4.7課后習(xí)題
第5章Fragment基礎(chǔ)
5.1Fragment概述
5.2Fragment的生命周期
5.3Fragment的創(chuàng)建
5.4Fragment與Activity之間的通信
5.5【項(xiàng)目案例4】“橙一色”App商品展示功能實(shí)現(xiàn)
5.6本章小結(jié)
5.7課后習(xí)題
第6章Android數(shù)據(jù)存儲(chǔ)
6.1數(shù)據(jù)存儲(chǔ)方式簡(jiǎn)介
6.2文件存儲(chǔ)
6.2.1外部存儲(chǔ)
6.2.2內(nèi)部存儲(chǔ)保存用戶注冊(cè)信息
6.3XML文件的序列化與解析
6.3.1XML序列化
6.3.2XML序列化實(shí)例
6.3.3XML文件解析
6.3.4XML解析實(shí)例
6.4SharedPreferences的使用
6.4.1SharedPreferences簡(jiǎn)介
6.4.2使用SharedPreferences存儲(chǔ)用戶注冊(cè)信息
6.5SQLite數(shù)據(jù)庫(kù)
6.5.1SQLite數(shù)據(jù)庫(kù)簡(jiǎn)介
6.5.2SQLite數(shù)據(jù)庫(kù)操作類以及接口
6.5.3SQLite數(shù)據(jù)庫(kù)的操作
6.5.4使用SQLite數(shù)據(jù)庫(kù)展示用戶信息
6.6JSON學(xué)習(xí)
6.6.1JSON簡(jiǎn)介
6.6.2JSON解析案例
6.7【項(xiàng)目案例5】“橙一色”App數(shù)據(jù)存儲(chǔ)及主頁(yè)展示
6.8本章小結(jié)
6.9課后習(xí)題
第7章ContentProvider的使用
7.1ContentProvider簡(jiǎn)介
7.2操作ContentProvider
7.2.1ContentProvider的創(chuàng)建
7.2.2Uri簡(jiǎn)介
7.2.3使用ContentProvider獲取通訊錄
7.3使用ContentProvider共享數(shù)據(jù)
7.3.1ContentResolver簡(jiǎn)介
7.3.2系統(tǒng)短信備份案例
7.3.3跨應(yīng)用數(shù)據(jù)共享案例
7.4ContentObserver
7.4.1ContentObserver簡(jiǎn)介
7.4.2監(jiān)控短信發(fā)送案例
7.5本章小結(jié)
7.6課后習(xí)題
第8章Service和廣播的使用
8.1Service簡(jiǎn)介
8.1.1Service的創(chuàng)建和配置
8.1.2Service的啟動(dòng)與停止
8.2Service的生命周期
8.3Service通信
8.3.1本地服務(wù)和遠(yuǎn)程服務(wù)通信
8.3.2本地服務(wù)通信實(shí)例
8.3.3跨應(yīng)用啟動(dòng)服務(wù)實(shí)例
8.4系統(tǒng)服務(wù)類的使用
8.4.1TelephonyManager
8.4.2SmsManager
8.5廣播消息
8.5.1廣播簡(jiǎn)介
8.5.2靜態(tài)注冊(cè)廣播案例
8.5.3動(dòng)態(tài)注冊(cè)廣播案例
8.6【項(xiàng)目案例6】“橙一色”App消息推送功能實(shí)現(xiàn)
8.7本章小結(jié)
8.8課后習(xí)題
第9章Android網(wǎng)絡(luò)通信編程
9.1網(wǎng)絡(luò)編程基礎(chǔ)
9.1.1HTTP簡(jiǎn)介
9.1.2標(biāo)準(zhǔn)Java接口
9.1.3Android網(wǎng)絡(luò)接口
9.2HTTP通信
9.2.1HttpURLConnection簡(jiǎn)介
9.2.2HttpURLConnection接口使用案例
9.2.3HttpClient簡(jiǎn)介
9.2.4HttpClient的使用案例
9.3Socket通信
9.3.1Socket通信原理
9.3.2Socket通信案例
9.4數(shù)據(jù)提交方式
9.4.1GET方式提交數(shù)據(jù)
9.4.2POST方式提交數(shù)據(jù)
9.5OkHttp的使用
9.5.1OkHttp的GET和POST請(qǐng)求
9.5.2在Android中使用OkHttp
9.6本章小結(jié)
9.7課后習(xí)題
第10章Android+PHP開(kāi)發(fā)
10.1PHP介紹
10.2PHP+MySQL簡(jiǎn)介
10.2.1PHP連接MySQL
10.2.2PHP 創(chuàng)建數(shù)據(jù)庫(kù)
10.2.3PHP創(chuàng)建數(shù)據(jù)表
10.2.4PHP對(duì)數(shù)據(jù)庫(kù)表的基本操作
10.3PHP+Android簡(jiǎn)介
10.3.1Android與PHP結(jié)合
10.3.2用戶登錄案例
10.4本章小結(jié)
10.5課后習(xí)題
第11章“傾心家教”應(yīng)用案例開(kāi)發(fā)
11.1應(yīng)用分析
11.2應(yīng)用界面設(shè)計(jì)
11.2.1登錄界面設(shè)計(jì)
11.2.2主界面規(guī)劃設(shè)計(jì)
11.2.3找教師界面
11.2.4消息界面
11.2.5個(gè)人信息界面
11.3數(shù)據(jù)庫(kù)設(shè)計(jì)
11.4應(yīng)用功能實(shí)現(xiàn)
11.4.1應(yīng)用主界面實(shí)現(xiàn)
11.4.2教師查詢/預(yù)約功能實(shí)現(xiàn)
11.4.3個(gè)人信息管理功能實(shí)現(xiàn)
11.4.4預(yù)約的教師查詢功能
11.4.5設(shè)置功能的實(shí)現(xiàn)
11.5應(yīng)用發(fā)布
11.6本章小結(jié)
第12章“橙一色”App功能優(yōu)化及完善
12.1應(yīng)用分析
12.2App應(yīng)用技術(shù)
12.2.1Spring Boot框架
12.2.2MyBatis持久層框架
12.2.3Fastjson解析庫(kù)
12.3“橙一色”App應(yīng)用功能界面設(shè)計(jì)
12.3.1商品界面
12.3.2購(gòu)物車界面
12.4數(shù)據(jù)庫(kù)創(chuàng)建
12.5Web前端界面設(shè)計(jì)
12.6Spring Boot服務(wù)端設(shè)計(jì)
12.6.1用戶接口的設(shè)計(jì)
12.6.2商品接口的設(shè)計(jì)
12.6.3消息接口的設(shè)計(jì)
12.6.4銷量接口的設(shè)計(jì)
12.7“橙一色”App端功能實(shí)現(xiàn)
12.7.1App登錄/注冊(cè)實(shí)現(xiàn)
12.7.2App首頁(yè)商品信息展示功能實(shí)現(xiàn)
12.7.3App商品信息展示功能實(shí)現(xiàn)
12.7.4App消息推送功能實(shí)現(xiàn)
12.8本章小結(jié)
參考文獻(xiàn)