第1章 Android概述... 1
1.1 了解Android. 1
1.1.1 Android起源與發(fā)展... 1
1.1.2 開放手持設(shè)備聯(lián)盟... 3
1.1.3 Android市場(chǎng)占有率... 3
1.2 Android版本... 4
1.2.1 Android版本簡(jiǎn)介... 5
1.2.2 Android各版本市場(chǎng)份額... 8
1.3 Android的特征... 9
1.4 Android系統(tǒng)架構(gòu)... 10
1.4.1 應(yīng)用程序?qū)?.. 10
1.4.2 應(yīng)用程序架構(gòu)層... 11
1.4.3 系統(tǒng)運(yùn)行時(shí)庫層... 11
1.4.4 Linux內(nèi)核層... 13
1.5 Android四大組件... 14
1.5.1 Activity. 14
1.5.2 Service. 15
1.5.3 Broadcast Receiver 15
1.5.4 Content Provider 15
1.6 Android程序生命周期... 15
習(xí)題1. 17
第2章 構(gòu)建Android程序... 18
2.1 Android項(xiàng)目創(chuàng)建... 18
2.2 Android目錄結(jié)構(gòu)... 20
2.3 Android項(xiàng)目資源... 24
2.3.1 創(chuàng)建資源... 24
2.3.2 使用資源... 25
2.3.3 資源本地化... 27
2.4 Gradle詳解... 28
2.5 項(xiàng)目調(diào)試與運(yùn)行... 29
2.5.1 Android項(xiàng)目運(yùn)行... 29
2.5.2 Android項(xiàng)目調(diào)試... 31
習(xí)題2. 33
第3章 初級(jí)UI 34
3.1 Android UI基本概念... 34
3.2 基本控件... 35
3.2.1 TextView.. 35
3.2.2 Button和ImageButton. 37
3.2.3 EditText 40
3.3 Layout組件... 43
3.3.1 FrameLayout 44
3.3.2 LinearLayout 45
3.3.3 RelativeLayout 47
3.3.4 TableLayout 50
3.3.5 GridLayout 52
3.3.6 Layout布局小結(jié)... 54
3.4 復(fù)合按鈕... 55
3.4.1 CheckBox. 55
3.4.2 RadioButton. 56
3.4.3 ToggleButton. 56
習(xí)題3. 57
第4章 Activity與Fragment 58
4.1 Activity詳解... 58
4.2 Activity的生命周期... 60
4.2.1 Activity棧... 60
4.2.2 Activity狀態(tài)... 61
4.2.3 Activity的生存期... 61
4.3 Activity啟動(dòng)模式... 63
4.4 Fragment詳解... 66
4.5 Fragment的生命周期... 69
4.5.1 Fragment的狀態(tài)... 69
4.5.2 Fragment的生命周期方法... 70
4.6 Fragment與Activity間通信... 71
習(xí)題4. 73
第5章 高級(jí)UI 74
5.1 Toast和Dialog. 74
5.1.1 Toast 74
5.1.2 Dialog. 77
5.2 Spinner 83
5.3 ListView.. 90
5.4 Menu. 92
5.5 Style和Theme. 102
5.5.1 使用Style. 102
5.5.2 繼承Style. 103
5.5.3 使用Theme. 104
5.5.4 繼承Theme. 105
習(xí)題5. 106
第6章 Intent與Broadcast 107
6.1 使用Intent啟動(dòng)Activity. 107
6.1.1 顯式Intent 107
6.1.2 隱式Intent 108
6.2 使用Intent實(shí)現(xiàn)Activity間數(shù)據(jù)傳遞... 110
6.2.1 向下一個(gè)Activity傳值... 110
6.2.2 獲取上一個(gè)Activity的返回值... 111
6.3 使用Intent廣播事件... 124
6.4 監(jiān)聽廣播... 125
習(xí)題6. 127
第7章 Service與多線程... 128
7.1 創(chuàng)建Service. 128
7.2 啟動(dòng)和停止服務(wù)... 129
7.3 IntentService. 132
7.4 Android多線程編程與消息機(jī)制... 134
7.4.1 Android多線程編程... 134
7.4.2 Android消息機(jī)制... 136
7.4.3 使用AsyncTask. 139
7.4.4 線程池... 142
習(xí)題7. 146
第8章 數(shù)據(jù)持久化技術(shù)和ContentProvider. 147
8.1 SharedPreference. 147
8.1.1 獲取SharedPreferences對(duì)象方法... 147
8.1.2 寫入SharedPreferences 148
8.1.3 從SharedPreferences讀取信息... 148
8.2 文件... 149
8.2.1 內(nèi)部存儲(chǔ)... 149
8.2.2 外部存儲(chǔ)... 151
8.2.3 資源文件的讀取... 156
8.3 SQLite. 159
8.3.1 數(shù)據(jù)庫創(chuàng)建... 160
8.3.2 數(shù)據(jù)庫操作... 161
8.4 ContentProvider簡(jiǎn)介... 165
8.4.1 ContentProvider的角色... 166
8.4.2 ContentResolver 166
8.4.3 ContentProvider中的URI 167
8.4.4 數(shù)據(jù)共享的實(shí)現(xiàn)... 168
習(xí)題8. 176
第9章 網(wǎng)絡(luò)編程... 177
9.1 基于Socket的網(wǎng)絡(luò)編程... 178
9.1.1 UDP套接字... 179
9.1.2 TCP套接字... 180
9.2 基于HTTP的網(wǎng)絡(luò)編程... 189
9.3 WebView.. 193
習(xí)題9. 197
第10章 實(shí)戰(zhàn)項(xiàng)目——2048游戲... 198
10.1 創(chuàng)建項(xiàng)目并編寫界面樣式... 198
10.2 定義方塊樣式與行為... 199
10.3 編寫MainActivity. 203
附錄A.. 212
參考文獻(xiàn)................................................................................................................ 221