內容簡介
本書內容更新超過80%,是一本全麵介紹Android應用開發的專著,擁有45章精彩內容供讀者學習。
全麵介紹瞭Android應用開發的各種技術,主要內容包括Android的四大應用程序組件(Activity、Service、Content Provider和Broadcast Receiver)、布局、菜單、控件、資源和本地化、可視化UI設計、對話框、Toast和通知欄(Notification)、Fragment、ActionBar、拖放技術、數據存儲技術、Android支持的各種組件技術、通信技術(藍牙、NFC、網絡等)、異步裝載、推送技術、多媒體、2D繪圖技術、OpenGL ES、桌麵小部件、動態壁紙、短信和彩信、傳感器、GPS、榖歌地圖、人機交互、輸入法開發、Android NDK開發、測試驅動開發、性能優化等。
並不局限於介紹Android的各種理論知識,而是從“實戰”的角度介紹開發技術。本書的所有示例都是精心設計的,足以使讀者對當前講解的理論知識駕輕就熟。這些示例中的很多例子都源於真實的項目,讀者可以對這些示例的源程序稍加改動就可用於自己的項目中。本書除瞭為每一個知識點提供完整的示例外,最後還提供瞭兩個完整的項目:笑臉連連看和NFC俠。這兩個項目極具參考價值,尤其是NFC俠,是筆者維護的一個開源項目,用於在不支持NFC的手機或Android模擬器上開發和測試NFC應用。讀者可以關注我的Blog來獲得NFC俠以及本書的信息。
本書適閤有一定Java基礎的讀者閱讀,如果讀者已經掌握瞭Java的基本語法,那麼本書將會成為您的選擇和枕邊書,您將從書中獲得更多有價值的Android開發技術。
內頁插圖
目錄
第1章 初識Android平颱
1.1 Android簡介
1.2 Android的製勝法寶
1.3 Android的版本發展曆程
1.3.1 Android 1.5(紙杯蛋糕)
1.3.2 Android 1.6(甜甜圈)
1.3.3 Android 2.1(鬆餅)
1.3.4 Android 2.2(凍酸奶)
1.3.5 Android 2.3(薑餅)
1.3.6 Android 3.0(蜂巢)
1.3.7 Android 4.0(冰激淩三明治)
1.3.8 Android 4.1/4.2(果凍豆)
1.4 Android的係統架構
1.5 小結
第2章 搭建Android開發和測試環境
2.1 搭建Android開發環境需要些什麼
2.2 安裝Java開發環境
2.2.1 安裝JDK
2.2.2 安裝和配置Eclipse
2.3 安裝Android開發環境
2.3.1 下載和安裝Android SDK
2.3.2 下載和安裝Android NDK
2.3.3 安裝和配置Eclipse插件:ADT
2.4 配置Android測試環境
2.4.1 建立Android虛擬設備(AVD)
2.4.2 啓動Android模擬器
2.4.3 安裝真機測試環境
2.5 小結
第3章 第一個Android應用程序
3.1 從第一個Android程序中可以學到什麼
3.2 建立Android工程
3.3 Android工程的結構
3.4 在窗口上放兩個按鈕
3.5 編寫窗口類
3.6 修改字符串資源
3.7 運行Android應用程序
3.8 調試Android應用程序
3.9 簽名Android應用程序
3.10 小結
第4章 Android應用程序架構
4.1 Android應用程序中的資源
4.1.1 資源存放在哪裏
4.1.2 資源的基本使用方法
4.2 Android的應用程序組件
4.2.1 窗口(Activity)組件
4.2.2 服務(Service)組件
4.2.3 廣播接收者(Broadcast receivers)組件
4.2.4 內容提供者(Content Provider)組件
4.3 AndroidManifest.xml文件的結構
4.4 小結
第5章 窗口(Activity)與視圖(View)
5.1 聲明和使用Activity
5.1.1 Activity的基本用法
5.1.2 同時適閤手機和平闆電腦的窗口風格
5.2 Activity的生命周期
5.3 窗口的常用事件
5.3.1 設置窗口標題事件(onTitleChanged)
5.3.2 鍵盤按下和抬起事件(onKeyDown和onKeyUp)
5.3.3 任意情況下捕捉鍵盤事件(dispatchKeyEvent)
5.3.4 迴退事件(onBackPressed)
5.3.5 按鍵長按事件(onKeyLongPress)
5.3.6 屏幕觸摸事件(onTouchEvent)
5.3.7 窗口獲得焦點事件(onWindowFocusChanged)
5.4 在不同Activity之間傳遞數據
5.4.1 使用Intent傳遞數據
5.4.2 使用靜態變量傳遞數據
5.4.3 使用剪貼闆傳遞數據
5.4.4 使用全局對象傳遞數據
5.5 從Activity返迴數據
5.6 視圖(View)
5.6.1 視圖簡介
5.6.2 使用XML布局文件定義視圖
5.6.3 在代碼中控製視圖
5.7 顯示係統窗口
5.7.1 直接撥號
5.7.2 將電話號傳入撥號程序
5.7.3 調用撥號程序
5.7.4 瀏覽網頁
5.7.5 查看聯係人
5.7.6 顯示係統設置界麵(設置主界麵、Wi-Fi設置界麵)
5.7.7 啓動處理音頻的程序
5.7.8 迴到Home窗口(相當於按Home鍵)
5.8 與Activity相關的技巧與特效
5.8.1 全屏顯示(隱藏標題欄和狀態欄)
5.8.2 定製窗口標題欄
5.8.3 為程序添加Splash
5.8.4 改變窗口大小、位置和透明度
5.8.5 按兩次關閉窗口
5.8.6 關閉所有的窗口
5.8.7 窗口截屏
5.9 小結
第6章 Intent與Intent Filter
6.1 Android係統的信使:Intent
6.2 Intent對象
6.2.1 Intent對象可以封裝和傳遞哪些信息
6.2.2 組件名(Component name)
6.2.3 動作(Action)
6.2.4 種類(Category)
6.2.5 數據(Data)
6.2.6 附加數據(Extra)
6.2.7 標誌(Flags)
6.3 顯式和隱式訪問窗口
6.4 跨應用程序訪問窗口
6.5 Android係統的過濾機製大揭秘
6.5.1 過濾條件的設置
6.5.2 過濾器的篩選規則
6.5.3 示例:過濾機製應用演示
6.6 Android源代碼與過濾器
6.6.1 係統內置程序有哪些窗口可以利用
6.6.2 顯示計算器(Calculator)
6.6.3 用瀏覽器(Browser)顯示網頁
6.6.4 撥打電話(Phone)與授權
6.7 獲取第三方程序中可調用的窗口
6.8 傳遞附加數據(Extra)
6.9 解析數據
6.10 小結
第7章 窗口(Activity)高級技術
7.1 Activity XML屬性詳解
7.1.1 設置Activity的基本信息
7.1.2 屏幕方嚮切換(android:screenOrientation)
7.1.3 阻止Activity銷毀和重建(android:configChanges)
7.1.4 允許Activity被實例化(android:enabled)
7.1.5 在最近應用列錶中顯示(android:excludeFromRecents)
7.1.6 允許其他程序訪問當前窗口(android:exported)
7.1.7 硬件加速(android:hardwareAccelerated)
7.1.8 在多進程中創建窗口實例(android:multiprocess)
7.1.9 無法返迴的Activity(android:noHistory)
7.1.10 指定要返迴的窗口(android:parentActivityName)
7.1.11 使窗口受到權限的保護(android:permission)
7.1.12 改變窗口所在的進程(android:process)
7.1.13 不保存窗口的狀態(android:stateNotNeeded)
7.1.14 窗口的主題(android:theme)
7.1.15 擴展窗口UI(android:uiOptions)
7.1.16 設置輸入法顯示模式(android:windowSoftInputMode)
7.2 深入探索Activity從創建到銷毀的過程
7.2.1 任務(Task)與迴退棧(Back Stack)
7.2.2 保存窗口(Activity)狀態
7.2.3 管理任務和迴退棧
7.2.4 Activity的4種創建模式
7.2.5 用Java代碼設置窗口創建模式
7.2.6 窗口的乾坤大挪移(affinity)
7.2.7 銷毀不再使用的窗口
7.3 Activity的彆名
7.4 小結
第8章 布局
8.1 Android的五大布局
8.1.1 框架布局(FrameLayout)
8.1.2 綫性布局(LinearLayout)
8.1.3 相對布局(RelativeLayout)
8.1.4 錶格布局(TableLayout)
8.1.5 絕對布局(AbsoluteLayout)
8.2 屬性資源與Android命名空間
8.3 布局屬性
8.4 布局高級技術
8.4.1 布局彆名
8.4.2 重用布局
8.4.3 優化布局
8.4.4 動態裝載布局
8.4.5 動態設置布局屬性
8.4.6 從右到左布局(RTL Layout)
8.5 小結
第9章 菜單
9.1 菜單的基本用法
9.1.1 創建選項菜單(Options Menu)
9.1.2 關聯Activity
9.1.3 響應菜單的單擊動作
9.1.4 動態添加、修改和刪除選項菜單
9.1.5 帶復選框和選項按鈕的子菜單
9.1.6 上下文菜單
9.1.7 菜單事件
9.1.8 從菜單資源中裝載菜單
9.2 菜單特效
9.2.1 自定義菜單
9.2.2 模擬UCWeb菜單效果
9.3 小結
第10章 Android的資源詳解(一)
10.1 創建資源
10.1.1 手工創建資源文件
10.1.2 用ADT模闆創建本地化圖標資源
10.1.3 用ADT模闆創建XML文件資源
10.2 使用資源
10.2.1 生成資源類文件(R.java)
10.2.2 從XML文件中訪問資源
10.2.3 使用Java代碼訪問資源
10.2.4 Java反射技術與枚舉資源
10.3 字符串(String)資源
10.3.1 普通字符串
10.3.2 字符串數組
10.3.3 復數字符串
10.3.4 在字符串中使用引號
10.3.5 用占位符格式化字符串
10.3.6 用HTML標簽格式化字符串資源
10.4 值(values)資源
10.4.1 整數(Integer)資源
10.4.2 尺寸(Dimension)資源
10.4.3 布爾(Boolean)資源
10.4.4 顔色(Color)資源
10.4.5 ID資源
10.4.6 整數數組(Integer-Array)資源
10.4.7 類型數組(Typed-Array)資源
10.5 菜單(menu)資源
10.6 圖像(drawable)資源
10.6.1 普通圖像資源
10.6.2 XML圖像資源
10.6.3 Nine-Patch圖像資源
10.6.4 XML Nine-Patch圖像資源
10.6.5 圖層(Layer)資源
10.6.6 圖像狀態(State)資源
10.6.7 圖像級彆(Level)資源
10.6.8 淡入淡齣(Cross-fade)資源
10.6.9 嵌入(Inset)圖像資源
10.6.10 剪切(Clip)圖像資源
10.6.11 外形(Shape)資源
10.7 小結
第11章 Android的資源詳解(二)
11.1 動畫資源
11.1.1 屬性(Property)動畫
11.1.2 幀(Frame)動畫
11.1.3 移動補間(TranslateTween)動畫
11.1.4 循環嚮右移動的EditText與上下彈跳的球
11.1.5 縮放補間(Scale Tween)動畫
11.1.6 跳動的心
11.1.7 鏇轉補間(Rotate Tween)動畫
11.1.8 鏇轉的星係
11.1.9 透明度補間(Alpha Tween)動畫
11.1.10 投擲炸彈
11.1.11 震動渲染器(Shake Interpolator)
11.1.12 自定義渲染器(Interpolator)
11.2 風格(Style)資源與主題(Theme)
11.3 小結
第12章 資源的本地化
12.1 建立本地化的資源目錄
12.2 資源目錄的命名規則
12.3 建立彆名資源
12.3.1 圖像彆名資源
12.3.2 布局彆名資源
12.3.3 字符串彆名資源
12.3.4 其他簡單值彆名資源
12.4 資源目錄的優先級
12.5 屏幕適配
12.5.1 屏幕適配要考慮的因素
12.5.2 適配不同屏幕可以采用的規則
12.5.3 屏幕尺寸和屏幕密度
12.5.4 位置、尺寸和字體應使用屏幕密度單位
12.5.5 與屏幕適配有關的標識符
12.5.6 影響屏幕適配的重要因素:布局和圖像
12.5.7 典型的屏幕適配案例
12.5.8 在Google Play上限製屏幕尺寸和屏幕密度
12.5.9 在Android模擬器上測試各種屏幕尺寸和密度
12.6 小結
第13章 Android的控件詳解(一)
13.1 顯示文本的控件(TextView)
13.1.1 顯示富文本(URL、不同大小、字體、顔色的文本)
13.1.2 用
標簽在TextView控件上顯示圖像
13.1.3 單擊鏈接彈齣Activity
13.1.4 為指定文本添加背景
13.2 編輯文本的控件(EditText)
13.2.1 像QQ一樣輸入錶情圖像
13.2.2 在EditText中輸入特定的字符
13.2.3 AutoCompleteTextView(自動完成輸入內容的控件)
13.3 按鈕(Button)和復選框(Checkbox)控件
13.3.1 Button(普通按鈕控件)
13.3.2 圖文混排的按鈕
13.3.3 ImageButton(圖像按鈕控件)
13.3.4 RadioButton(選項按鈕控件)
13.3.5 ToggleButton(開關狀態按鈕控件)
13.3.6 CheckBox(復選框控件)
13.4 圖像控件(ImageView)
13.4.1 ImageView控件的基本用法
13.4.2 顯示指定區域的圖像
13.4.3 縮放和鏇轉圖像
13.5 時間與日期控件
13.5.1 DatePicker(輸入日期的控件)
13.5.2 TimePicker(輸入時間的控件)
13.5.3 DatePicker、TimePicker與TextView同步顯示日期和時間
13.5.4 AnalogClock和DigitalClock(顯示時鍾的控件)
13.6 小結
第14章 Android的控件詳解(二)
14.1 進度條控件
14.1.1 ProgressBar(進度條控件)
14.1.2 SeekBar(拖動條控件)
14.1.3 設置ProgressBar和SeekBar的顔色及背景圖
14.1.4 RatingBar(評分控件)
14.2 列錶控件
14.2.1 ListView(普通列錶控件)
14.2.2 為ListView列錶項添加復選框和選項按鈕
14.2.3 對列錶項進行增、刪、改操作
14.2.4 改變列錶項的背景色
14.2.5 ListActivity(封裝ListView的Activity)
14.2.6 ExpandableListView(可擴展的列錶控件)
14.2.7 Spinner(下拉列錶控件)
14.3 GridView(網格控件)
14.4 TabHost(標簽控件)
14.5 ViewStub(惰性裝載控件)
14.6 小結
第15章 可視化UI設計
15.1 拖放控件
15.2 設置視圖屬性
15.3 預覽各種屏幕尺寸
15.4 語言和地區的本地化測試
15.5 其他可視化功能
15.6 小結
第16章 對話框、Toast與通知欄(Notification)
16.1 對話框
16.1.1 帶2個按鈕(確認/取消)的對話框
16.1.2 帶3個按鈕(覆蓋/忽略/取消)的對話框
16.1.3 簡單列錶對話框
16.1.4 單選列錶對話框
16.1.5 多選列錶對話框
16.1.6 進度對話框
16.1.7 登錄對話框
16.1.8 使用Activity托管對話框
16.2 Toast
16.3 通知(Notification)
16.3.1 在狀態欄上顯示通知信息
16.3.2 永久存在的Notification
16.3.3 自定義Notification
16.4 小結
第17章 封裝UI和代碼利器——Fragment
17.1 Fragment簡介
17.2 什麼時候使用Fragment
17.3 按照Fragment設計原則編寫程序
17.4 Fragment的生命周期
17.5 創建Fragment
17.5.1 通過XML布局文件創建Fragment
17.5.2 通過Java代碼創建Fragment
17.5.3 創建無UI的Fragment
17.5.4 在低版本Android中使用Fragment(Support Library)
17.6 Activity與Fragment之間的交互
17.6.1 Fragm
Android開發權威指南(第2版)(附CD光盤1張) 下載 mobi epub pdf txt 電子書 格式