本書共10章,先介紹Android軟件的基礎知識、組成、布局、控件、菜單與對話框等基本內容,讓讀者熟悉并掌握Android軟件,接著介紹Android圖形、動畫、存儲、手機通信、手機服務、手機多媒體等內容。
丁偉雄、宋曉光、李偉平編著的《Android程序設計與應用》是以Android目前最新的版本4.4.2為平臺編寫的,書中內容全面、詳細,實例豐富、實用性強,書中對每一個知識點都做了介紹,并給出一個相應的實例進行說明,使讀者更快、更好地掌握 Android。本書主要是從Android開發最簡單的內容開始,逐步深入,最后結合項目的開發進行詳細講解。
本書共10章,先介紹Android軟件的基礎知識、組成、布局、控件、菜單與對話框等基本內容,讓讀者熟悉并掌握Android軟件,接著介紹Android圖形、動畫、存儲、手機通信、手機服務、手機多媒體等內容,讓讀者熟練地使用Android進行手機功能的開發。
本書適合不同層次的讀者閱讀,特別適合程序開發員作為Android開發的參考書。
Android是一個開放式手機和平板電腦的操作系統,目前的發展十分迅猛。雖然Android面世時間不長,但Android已經對傳統的手機平臺構成了強大的威脅。業界部分人士預測,Android將會成為應用最廣泛的手機操作系統。
Android是Google于2007年11月5日發布的基于Linux平臺的開源移動操作系統,Google向全世界推廣Android的策略是持續的,而且推廣的力度很大。隨著越來越多硬件廠商的加入,精心設計的程序通過各種接口到達Android終端設備,如手機、平板電腦、手持游戲設備、數字相框、電子書和Google TV電視盒等。
Android作為一個開放、開源的移動終端平臺,對于業界來講,這意味著源代碼基于Apache 2.0許可進行開放。Android具有以下五大優勢。
(1) 開放性: Android平臺的最大優勢就是其開放性,開放的平臺允許任何移動終端廠商加入到Android聯盟中來。顯著的開放性可以使其擁有更多的開發者,隨著用戶和應用的日益增加,一個嶄新的平臺也將很快走向成熟。
開放性對于Android的發展而言,有利于積累人氣,這里的人氣包括消費者和廠商,而對于消費者來講,最大的受益正是豐富的軟件資源。開放的平臺也會帶來更大的競爭,如此一來,消費者將可以用更低的價位購得心儀的手機。
(2) 掙脫運營商的束縛: 在過去很長的一段時間,特別是在歐美地區,手機應用往往受到運營商制約,使用什么功能接入什么網絡,幾乎都受到運營商的控制。隨著EDGE、HSDPA這些2G至3G移動網絡的逐步過渡和提升,手機隨意接入網絡已不是運營商口中的笑談。
(3) 豐富的硬件選擇: 這與Android平臺的開放性相關,由于Android的開放性,眾多的廠商會推出千奇百怪、功能特色各具的多種產品。功能上的差異和特色,不會影響到數據同步,甚至是軟件的兼容。
(4) 不受任何限制的開發商: Android平臺提供給第三方開發商一個十分寬泛、自由的環境,不會受到各種條條框框的限制,可想而知,會有多少新穎別致的軟件產生。但也有其兩面性,血腥、暴力、情色方面的程序和游戲如何控制是留給Android的難題之一。
(5) 無縫結合的Google應用: 在互聯網上Google已經有了十幾年歷史,從搜索巨人到全面的互聯網滲透,Google服務(如地圖、郵件、搜索等)已經成為連接用戶和互聯網的重要紐帶,而Android平臺手機將無縫地結合這些優秀的Google服務。
在Android推出之前,移動開發領域的發展一直處于不溫不火的局面,Android的推出為移動互聯網開發領域吹進了一股清新的風。它的精巧體系架構以及完全開放的特性也吸引了無數的開發人員。Android作為一個優秀的移動操作平臺,其程序開發的學習很難,最大的困難就是相關資源的缺乏。Google提供的主要學習資料就是Android SDK文檔。SDK文檔對于開發人員了解Android程序設計有很大的幫助,但并沒有系統地講解Android程序設計的相關技術。針對這些問題,作者精心編寫了本書。
本書的編寫具有以下幾大優點。
內容全: 對于剛接觸Android的人員,本書首先對Android系統的歷史以及架構做了詳細的介紹。
實例多: 對于Android系統中的每一個知識點,不管是一個簡單的文本框還是復雜的控件,本書都會給出一個相應的實例做說明,這樣便于讀者對知識點進行理解和掌握。
實用性強: 本書采用Android應用程序常用的知識點,并結合實例講解,讓讀者在實際應用中能夠快速上手,同時也方便讀者對程序進一步擴展。
通俗易懂: 本書條理清晰、文字簡潔,每講解一些基本概念都結合實例進行說明,做到理論與實踐相結合,從而讓讀者快速理解與掌握Android的相關應用。
圖文并茂: 針對沒有接觸過Android的讀者,本書對相關概念一般會插入對應的圖片做說明,同時對每一個知識點實例的運行效果給出相應的運行效果圖,這樣對讀者掌握這一知識點起到了很大的作用。
應業界需要,作者編寫了本書,本書的編寫平臺是目前Android的最新版本4.4.2。本書共分為10章,其主要內容如下。
第1章: 介紹Android入門知識,主要包括Android概述、Android環境搭建、Android應用項目組成等內容。
第2章: 介紹Android基本組件,主要包括Android生命周期、資源的管理與使用、Activity(活動)、Intent(意圖)等內容。
第3章: 介紹Android布局,主要包括UI界面、View 對象、布局管理器等內容。
第4章: 介紹Android基本控件,主要包括文本類控件、按鈕類控件、列表類控件等內容。
第5章: 介紹Android菜單與對話框,主要包括Android菜單、Android對話框、Android消息提示框等內容。
第6章: 介紹Android圖形與動畫,主要包括Android圖形、Path繪圖、Android動畫等內容。
第7章: 介紹Android持久化存儲,主要包括文件結構、數據存儲方式、Android的各種存儲等內容。
第8章: 介紹Android手機通信與服務,主要包括RPC通信、TCP通信、UDP通信以及手機服務等內容。
第9章: 介紹Android手機自動控制服務,主要包括查看手機信息、查看SIM信息、鬧鐘設置等內容。
第10章: 介紹Android的多媒體功能,主要包括音頻播放、錄制多媒體、視頻播放以及感應器等內容。
本書主要由丁偉雄、宋曉光和李偉平編寫,此外參加編寫的人員還有劉超、鄧俊輝、梁朗星、李旭波、張棣華、劉泳、鄧耀隆、何正風和周品。
本書適合不同層次的讀者閱讀,特別適合程序開發員作為Android開發的參考書。由于作者的水平有限,加之時間倉促,書中難免會存在不足之處,敬請廣大讀者批評指正。
編者2014年10月
第1章 Android入門知識
1.1 Android概述
1.1.1 Android平臺特性
1.1.2 Android平臺架構
1.1.3 Android市場
1.1.4 Android應用組件
1.2 Android環境搭建
1.2.1 系統需求
1.2.2 安裝JDK
1.2.3 安裝Eclipse
1.2.4 安裝Android SDK
1.2.5 安裝ADT插件
1.2.6 Android虛擬設備
1.2.7 運行AVD
1.3 Android應用項目組成
1.4 第一個Android實例
第2章 Android基本組件
2.1 Android生命周期
2.2 資源的管理與使用
2.2.1 顏色資源
2.2.2 權限控制
2.3 Activity
2.3.1 單個Activity
2.3.2 多個Activity
2.4 Intent
2.4.1 Intent構成與屬性
2.4.2 Intent經典實例
2.5 Adapter對象
2.5.1 Adapter綁定
2.5.2 ArrayAdapter與SimpleCursorAdapter
2.6 消息傳遞機制
第3章 Android布局
3.1 UI界面
3.1.1 布局文件控制UI
3.1.2 代碼控制UI
3.1.3 混合控制UI
3.2 View對象
3.2.1 View概述
3.2.2 ViewGroup概述
3.2.3 自定義View
3.2.4 View對象實例
3.3 布局管理器
3.3.1 線性布局
3.3.2 表格布局
3.3.3 幀布局
3.3.4 相對布局
3.4 選項卡
3.5 TabHost容器
3.6 布局應用實例
第4章 Android基本控件
4.1 文本類控件
4.1.1 文本框屬性及實例
4.1.2 編輯框屬性及實例
4.1.3 自動文本框屬性及實例
4.2 按鈕類控件
4.2.1 普通按鈕概述及實例
4.2.2 圖片按鈕概述與實例
4.2.3 開關按鈕屬性及實例
4.2.4 單選按鈕/復選框屬性及實例
4.3 列表類控件
4.3.1 列表選擇框屬性及實例
4.3.2 列表視圖屬性及實例
4.4 圖像類控件
4.4.1 圖像視圖屬性及實例
4.4.2 網格視圖屬性及實例
4.4.3 圖像切換器概述及實例
4.4.4 畫廊視圖屬性及實例
4.5 其他控件
4.5.1 滾動視圖概述及實例
4.5.2 進度條屬性及實例
4.5.3 拖動條概述及實例
4.5.4 星級評分條屬性及實例
4.6 時間類控件
4.6.1 日期、時間控件概述及實例
4.6.2 時鐘控件概述及實例
4.6.3 計時器概述及實例
4.7 基本控件綜合實例
4.7.1 體重器界面
4.7.2 登錄界面
4.7.3 人物評分
第5章 Android菜單與對話框
5.1 菜單
5.1.1 菜單選項概述及實例
5.1.2 上下文菜單屬性及實例
5.2 點陣圖像屬性及實例
5.3 對話框
5.3.1 AlertDialog對話框屬性及實例
5.3.2 PopupWindow對話框概述及實例
5.3.3 時間、日期對話框屬性及實例
5.3.4 進度條對話框屬性及實例
5.4 消息提示框
5.4.1 Toast概述及實例
5.4.2 Notification概述及實例
5.5 菜單與對話框綜合實例
第6章 Android圖形與動畫
6.1 Android圖形
6.1.1 畫筆
6.1.2 畫布
6.2 Path繪圖
6.3 美化UI控件
6.3.1 使用style
6.3.2 selector狀態列表
6.3.3 背景圖片selector
6.4 Android動畫
6.4.1 補間動畫
6.4.2 逐幀動畫
6.5 圖形與動畫綜合實例
第7章 Android持久化存儲
7.1 文件結構
7.1.1 系統文件
7.1.2 數據文件
7.1.3 外部存儲文件
7.2 數據存儲方式
7.3 SharedPreferences存儲
7.3.1 SharedPreferences存儲概述
7.3.2 SharedPreferences存儲實例
7.4 文件存儲數據
7.4.1 程序私有文件
7.4.2 讀/寫SD卡文件
7.5 SQLite數據庫存儲
7.5.1 SQLite數據庫存儲概述
7.5.2 SQLite數據庫開發
7.5.3 SQLite數據庫實例
7.6 ContentProvider存儲數據
7.6.1 ContentProvider存儲分析
7.6.2 ContentProvider存儲實例
7.7 NetWork存儲數據
第8章 Android手機通信與服務
8.1 RPC通信
8.2 TCP通信
8.2.1 TCP通信概述
8.2.2 TCP通信實例
8.3 UDP通信
8.3.1 UDP通信概述
8.3.2 UDP通信流程
8.3.3 UDP通信實例
8.4 HTTP通信
8.4.1 GET請求
8.4.2 POST請求
8.5 WebView瀏覽器
8.6 手機通信綜合實例
8.7 手機服務
8.7.1 電話撥打功能
8.7.2 自制電話撥號功能
8.7.3 短信功能
8.7.4 接收短信
8.7.5 電子郵件
8.7.6 通訊錄搜索
8.7.7 震動功能
8.7.8 WiFi功能
8.7.9 手機桌面設置
8.8 綜合實例
第9章 Android手機自動控制服務
9.1 查看手機信息
9.2 查看SIM信息
9.3 鬧鐘設置
9.4 查看電池剩余量
9.5 接收到短信的提示
9.6 短信防火墻
9.7 語音識別
9.8 計算器的實現
9.9 備忘錄的實現
第10章 Android的多媒體功能
10.1 音頻播放
10.2 錄制多媒體
10.3 視頻播放
10.4 攝像頭的實現
10.4.1 攝像頭的拍照功能
10.4.2 實現攝像頭錄制
10.5 傳感器
10.5.1 GPS位置傳感器
10.5.2 傳感器介紹
網上參考資源
參考文獻