內容簡介
依託Android最新的主流平台為Android 4.0,面向最新的SDK和相關工具,同時還涵蓋了老版平台中的一些常用功能,以幫助開發人員適應目前市面上所有的主流設備。
《Android移動套用開發(第3版)卷Ⅰ:基礎篇》涵蓋了作者數年來在移動開發領域所積累的經驗,以及成功進行移動項目開發所需的全部概念和實用技術,包括移動開發過程與傳統軟體開發的區別,還包括幫助你節約寶貴時間和規避隱患的技巧。不管你的項目有多大規模,《Android移動套用開發(第3版)卷Ⅰ:基礎篇》都能為你提供幫助。
《android移動套用開發(第3版)卷Ⅰ:基礎篇》由Lauren Darcey、Shane Conder著,北京麥稈創智信息技術有限公司譯,涵蓋了android開發從概念、技術到市場推廣套用的全部主題,內容包括android平台概覽、
android應用程式設計精髓、android用戶界面設計精髓、android應用程式設計精髓、對外發布你的android應用程式和附錄6個部分。附錄還包含了android開發常用工具(模擬器、ddms和eclipse)的使用指南。 《android移動套用開發(第3版)卷Ⅰ:基礎篇》不僅適合android應用程式開發人員閱讀,還能為qa測試人員提供指導。另外,本書還可以幫助項目經理更好地管理項目進程和項目團隊,幫助市場推廣人員更好地把握市場,創造令人矚目的銷售業績。點擊連結進入新版: Android移動套用開發(第3版)卷2:提高篇
圖書目錄
第一部分 Android平台概覽
第1章 Android簡介
1.1 移動軟體開發簡史
1.1.1 遙想當年
1.1.2 “磚頭”
1.1.3 無線套用協定(WAP)
1.1.4 專用移動平台
1.2 開放手機聯盟(OHA)
1.2.1 無線Google
1.2.2 成立開放手機聯盟
1.2.3 製造商:設計Android手機
1.2.4 移動運營商:傳播Android體驗
1.2.5 應用程式推動的設備銷售:開發Android應用程式
1.2.6 充分發揮Android的優勢
1.2.7 Android市場:我們的定位
1.3 Android平台的不同之處
1.3.1 Android:下一代平台
1.3.2 免費開放原始碼
1.3.3 熟悉和廉價的開發工具
1.3.4 合理的開發人員學習曲線
1.3.5 強大的應用程式開發支持
1.3.6 豐富、安全的套用集成
1.3.7 無障礙發布
1.3.8 為應用程式提供的“自由市場”
1.3.9 新生並逐漸成長的平台
1.4 Android平台
1.4.1 Android的基本體系結構
1.4.2 安全與許可許可權
1.4.3 開發Android應用程式
小結
參考資料和更多信息
第2章 搭建你的Android開發環境
2.1 配置你的開發環境
2.1.1 配置作業系統以適應設備調試
2.1.2 配置Android硬體以供調試
2.1.3 升級Android SDK
2.1.4 Android軟體開發包的問題
2.2 探索Android SDK
2.2.1 理解Android SDK許可協定
2.2.2 閱讀Android SDK文檔
2.2.3 探索Android應用程式核心框架
2.2.4 了解Android核心工具
2.2.5 探索Android示例應用程式
小結
參考資料和更多信息
第3章 編寫第一個Android應用程式
3.1 測試你的開發環境
3.1.1 在Eclipse工程中導入Snake應用程式
3.1.2 為Snake工程創建Android虛擬設備(AVD)
3.1.3 為Snake工程創建運行配置參數
3.1.4 在Android模擬器中運行Snake應用程式
3.2 構建你的第一個Android應用程式
3.2.1 創建和配置新的Android工程
3.2.2 Android應用程式的核心檔案和目錄
3.2.3 為新工程創建Android虛擬設備
3.2.4 為工程配置運行參數
3.2.5 在模擬器中運行Android應用程式
3.2.6 在模擬器中調試Android應用程式
3.2.7 為Android應用程式添加日誌記錄
3.2.8 為應用程式添加媒體支持
3.2.9 為應用程式添加位置服務(LBS)
3.2.10 在硬體上調試應用程式
小結
參考資料和更多信息
第4章 掌握Android開發工具
4.1 使用Android文檔
4.2 使用Android模擬器
4.3 使用LogCat查看應用程式日誌數據
4.4 使用DDMS調試應用程式
4.5 使用Android調試橋(ADB)
4.6 使用資源編輯器和UI設計器
4.7 使用Android層級瀏覽器
4.7.1 運行層級瀏覽器
4.7.2 使用布局瀏覽模式
4.7.3 最佳化用戶界面
4.7.4 使用精細像素模式
4.8 使用九格拉伸圖像
4.9 使用其他Android工具
小結
參考資料和更多信息
第二部分 Android應用程式設計基礎
第5章 剖析Android應用程式
5.1 掌握重要的Android術語
5.2 使用應用程式Context
5.2.1 獲取應用程式Context
5.2.2 使用應用程式Context
5.2.3 獲取應用程式資源
5.2.4 訪問應用程式首選項
5.2.5 訪問應用程式檔案和目錄
5.2.6 獲取應用程式組件
5.3 使用Activity執行應用程式任務
5.3.1 Android Activity的生命周期
5.3.2 使用Activity回調管理應用程式狀態和資源
5.4 使用Fragment組織Activity組件
5.5 使用Intent管理Activity跳轉
5.5.1 使用Intent實現Activity之間的跳轉
5.5.2 使用Activity和Intent組織應用程式導航
5.6 使用服務
5.7 接收和廣播Intent
小結
參考資料和更多信息
第6章 使用Android Manifest檔案定義應用程式
6.1 使用Android Manifest檔案配置Android應用程式
6.2 管理你的應用程式標識
6.2.1 為你的應用程式指定版本
6.2.2 給你的應用程式加上名稱和圖示
6.3 強制指定應用程式的系統需求
6.3.1 針對特定SDK版本
6.3.2 強制指定應用程式平台需求
6.3.3 使用外部庫
6.3.4 其他應用程式配置及篩選器
6.4 在Android Manifest檔案中註冊Activity
6.4.1 使用Intent過濾器為應用程式指派主入口點Activity
6.4.2 配置其他Intent過濾器
6.4.3 註冊其他應用程式組件
6.5 使用許可許可權
6.5.1 註冊應用程式所需的許可許可權
6.5.2 註冊應用程式強制要求的許可許可權
6.6 探索Manifest檔案的其他設定
小結
參考資料和更多信息
第7章 管理應用程式資源
7.1 什麼是資源
7.1.1 存儲應用程式資源
7.1.2 資源的類型
7.1.3 使用程式訪問資源
7.2 使用Eclipse設定簡單資源
7.3 使用不同種類的資源
7.3.1 使用String(字元串)資源
7.3.2 使用格式化的字元串資源
7.3.3 使用字元串數組
7.3.4 使用Boolean(布爾)資源
7.3.5 使用Integer(整型)資源
7.3.6 使用顏色
7.3.7 使用尺寸
7.3.8 使用簡單Drawable資源
7.3.9 使用圖像
7.3.10 使用動畫
7.3.11 使用選單
7.3.12 使用XML檔案
7.3.13 使用原始檔案
7.3.14 資源引用
7.3.15 使用布局(Layout)
7.4 引用系統資源
小結
參考資料和更多信息
第三部分 Android用戶界面設計精髓
第8章 探索用戶界面螢幕元素
8.1 Android視圖和布局簡介
8.1.1 Android視圖簡介
8.1.2 Android控制項簡介
8.1.3 Android布局簡介
8.2 使用TextView顯示文本
8.2.1 配置布局和尺寸
8.2.2 在文本中創建上下文連結
8.3 使用EditText獲取用戶數據
8.3.1 使用EditText控制項獲取用戶輸入文本
8.3.2 使用輸入過濾器約束用戶輸入
8.4 使用自動補全輔助用戶
8.5 使用Spinner控制項為用戶提供可選輸入
8.6 使用按鈕、多選框和單選組完成簡單的用戶選擇
8.6.1 使用基本按鈕
8.6.2 使用BheckBox和ToggleButton控制項
8.6.3 使用RadioGroup和Radio Button
8.7 獲取用戶輸入的日期和時間
8.8 使用指示器向用戶顯示數據
8.8.1 使用ProgressBar指示進度
8.8.2 使用SeekBar調整進度
8.8.3 使用RatingBar顯示評分數據
8.8.4 使用Chronometer顯示時間推移
8.8.5 顯示時間
小結
參考資料和更多信息
第9章 使用布局設計用戶界面
9.1 創建Android用戶界面
9.1.1 使用XML資源創建布局
9.1.2 使用代碼創建布局
9.2 組織用戶界面
9.2.1 為布局設計使用ViewGroup子類
9.2.2 將ViewGroup子類作為視圖容器
9.3 使用內建的布局類
9.3.1 使用FrameLayout
9.3.2 使用LinearLayout
9.3.3 使用RelativeLayout
9.3.4 使用TableLayout
9.3.5 使用GridLayout
9.3.6 在螢幕上使用多布局
9.4 使用容器控制項類
9.4.1 使用數據驅動容器
9.4.2 使用標籤組織視圖
9.4.3 添加滾動支持
9.4.4 探索其他視圖容器
小結
參考資料和更多信息
第10章 使用Fragment
10.1 理解Fragment
10.1.1 理解Fragment生命周期
10.1.2 使用特化的Fragment
10.1.3 設計基於Fragment的應用程式
10.2 使用Android支持包
10.2.1 為舊版應用程式添加Android Fragment支持
10.2.2 在新應用程式中針對舊版平台使用Fragment
10.2.3 在項目中連結Android支持包
小結
參考資料和更多信息
第11章 使用對話框
11.1 選擇一種方式實現對話框
11.2 探索不同類型的對話框
11.3 使用對話框:以前的方法
11.4 使用對話框:Fragment方法
小結
參考資料和更多信息
第四部分 Android應用程式設計精髓
第12章 使用Android首選項
12.1 使用應用程式首選項
12.1.1 正確地使用首選項
12.1.2 存儲不同類型的首選項值
12.1.3 創建私有和共享首選項
12.1.4 創建可供多個Activity使用的共享首選項
12.1.5 搜尋和讀取首選項
12.1.6 新增、修改和刪除首選項
12.1.7 處理首選項變更
12.1.8 使用Android檔案系統查找首選項數據
12.2 創建可管理的用戶首選項
12.2.1 創建首選項資源檔案
12.2.2 使用PreferenceActivity類
小結
參考資料和更多信息
第13章 使用檔案和目錄
13.1 使用設備應用程式數據
13.2 練習良好的檔案管理
13.3 理解Android檔案許可許可權
13.4 使用檔案和目錄
13.4.1 探索Android應用程式目錄
13.4.2 使用Android檔案系統操作其他目錄和檔案
小結
參考資料和更多信息
第14章 使用內容提供器
14.1 探索Android內容提供器
14.1.1 使用MediaStore內容提供器
14.1.2 使用CallLog內容提供器
14.1.3 使用瀏覽器(Browser)內容提供器
14.1.4 使用CalenderContract內容提供器
14.1.5 使用UserDictionary(用戶詞典)內容提供器
14.1.6 使用VoicemailContract內容提供器
14.1.7 使用Settings內容提供器
14.1.8 使用聯繫簿(Contacts)內容提供器
14.2 修改內容提供器的數據
14.2.1 添加記錄
14.2.2 修改記錄
14.2.3 刪除記錄
14.3 使用第三方內容提供器
小結
參考資料和更多信息
第15章 設計高兼容性應用程式
15.1 最大化應用程式兼容性
15.2 為兼容性設計用戶界面
15.2.1 使用Fragment
15.2.2 使用Android支持包
15.2.3 支持特定螢幕類型
15.2.4 使用九格拉伸圖像
15.2.5 使用Working Square原理
15.3 提供應用程式替代資源
15.3.1 理解資源的解析(Resolve)方式
15.3.2 使用替代資源標識符
15.3.3 提供用於不同螢幕方向的資源
15.3.4 在程式中使用替代資源
15.3.5 高效地組織應用程式資源
15.4 面向平板電腦、電視和其他新設備
15.4.1 面向平板設備
15.4.2 面向Google電視設備
小結
參考資料和更多信息
第五部分 對外發布你的Android應用程式
第16章 移動軟體開發過程
16.1 移動開發過程概覽
16.2 選擇一種軟體開發方法
16.2.1 理解“瀑布模型”的危險
16.2.2 認識疊代式開發的價值
16.3 整合應用程式需求
16.3.1 確定工程需求
16.3.2 為移動應用程式開發用例
16.3.3 吸納第三方需求
16.3.4 管理設備資料庫
16.4 項目風險評估
16.4.1 確定目標設備
16.4.2 獲取目標設備
16.4.3 確定應用程式需求的可行性
16.4.4 理解質量保障的風險
16.5 編寫基本項目文檔
16.5.1 為質量保障制定測試計畫
16.5.2 提供第三方所需的文檔
16.5.3 提供維護和移植所需的文檔
16.6 使用配置管理系統
16.6.1 選擇一個原始碼控制系統
16.6.2 實現一個可用的版本管理系統
16.7 設計移動應用程式
16.7.1 認識移動設備的局限
16.7.2 移動應用程式體系結構探索
16.7.3 可擴展和維護設計
16.7.4 應用程式互動設計
16.8 開發移動應用程式
16.9 測試移動應用程式
16.1 發布移動應用程式
16.11 支持和維護移動應用程式
16.11.1 跟蹤和定位用戶產生的“崩潰”報告
16.11.2 測試固件升級
16.11.3 維護適當的應用程式文檔
16.11.4 管理伺服器的動態更改
16.11.5 確定低風險移植機會
小結
參考資料和更多信息
第17章 設計和開發“防彈”Android應用程式
17.1 “防彈”移動應用程式設計最佳實踐
17.1.1 滿足移動用戶的需求
17.1.2 為移動設備設計用戶界面
17.1.3 設計穩定、靈敏的移動應用程式
17.1.4 設計安全的移動應用程式
17.1.5 在設計移動應用程式時考慮利益的最大化
17.1.6 在Android應用程式設計時使用第三方標準
17.1.7 設計便於維護和升級的移動應用程式
17.1.8 在應用程式設計中使用Andriod工具
17.1.9 避免設計時的愚蠢錯誤
17.2 “防彈”移動應用程式開發最佳實踐
17.2.1 設計有效的移動開發過程
17.2.2 提早和經常地測試應用程式可行性
17.2.3 使用代碼標準、代碼檢查和單元測試以提高代碼質量
17.2.4 處理某單一設備的缺陷
17.2.5 在應用程式開發中使用Android工具
17.2.6 避免開發時的愚蠢錯誤
小結
參考資料和更多信息
第18章 測試Android應用程式
18.1 設計一個應用程式漏洞跟蹤系統
18.2 管理測試環境
18.3 儘量全面地進行測試
18.4 在應用程式測試中使用Android工具
18.5 避免測試時的愚蠢錯誤
小結
參考資料和更多信息
第19章 發布你的Android應用程式
19.1 選擇合適的發布模式
19.1.1 保護你的智慧財產權
19.1.2 向用戶收費
19.2 為發布而打包你的應用程式
19.2.1 準備封裝你的代碼
19.2.2 為你的應用程式打包並簽名
19.2.3 測試軟體包的發布版本
19.2.4 發布你的應用程式
19.3 在Android Market上發布你的應用程式
19.3.1 在Android Market上註冊一個開發人員賬號
19.3.2 將你的應用程式上傳至Android Market
19.3.3 上傳應用程式市場資源
19.3.4 配置應用程式詳情頁面
19.3.5 配置應用程式發布選項
19.3.6 配置應用程式聯繫信息和知情通知
19.3.7 將你的應用程式發布至Android Market
19.3.8 在Android Market上管理你的應用程式
19.4 通過其他途徑發布應用程式
19.5 通過自主渠道發布應用程式
小結
參考資料和更多信息
第六部分 附錄
附錄A Android模擬器快速入門
A.1 模擬器的目的:虛擬現實
A.2 使用Android虛擬設備(AVD)
A.2.1 使用Android SDK和AVD管理器
A.2.2 創建AVD
A.3 使用指定AVD啟動模擬器
A.3.1 維持模擬器高效運行
A.3.2 配置模擬器啟動項
A.3.3 啟動模擬器運行應用程式
A.3.4 從Android SDK和AVD管理器中啟動模擬器
A.4 配置模擬器的GPS位置信息
A.5 在兩個模擬器實例之間撥打電話
A.6 在兩個模擬器實例之間傳送訊息
A.7 通過控制台與模擬器互動
A.7.1 使用控制台模擬來電
A.7.2 使用控制台模擬短訊息
A.7.3 使用控制台傳送GPS坐標
A.7.4 使用控制台監視網路狀態
A.7.5 使用控制台操作電源設定
A.7.6 使用其他控制台命令
A.8 享受模擬器
A.9 認識模擬器的局限
參考資料和更多信息
附錄B Android DDMS快速入門
B.1 獨立或結合Eclipse使用DDMS
B.2 熟悉DDMS的關鍵特性
B.3 使用進程、執行緒和堆
B.3.1 向Android應用程式關聯調試器
B.3.2 終止Android進程
B.3.3 監視Android應用程式的執行緒活動
B.3.4 監視堆活動
B.3.5 觸發垃圾回收(GC)
B.3.6 創建和使用HPROF檔案
B.4 使用記憶體分配(allocation)跟蹤器
B.5 使用檔案瀏覽器
B.5.1 瀏覽模擬器或設備上的檔案系統
B.5.2 從模擬器或設備上複製檔案
B.5.3 向模擬器或設備複製檔案
B.5.4 刪除模擬器或設備上的檔案
B.6 使用模擬器控制
B.6.1 模擬語音來電
B.6.2 模擬短訊息接收
B.6.3 傳送位置坐標
B.7 在模擬器或目標設備上截屏
B.8 使用應用程式日誌
附錄C Eclipse技巧和訣竅
C.1 構建你的Eclipse工作空間
C.1.1 集成原始碼管理服務
C.1.2 調整視圖中的標籤面板
C.1.3 最大化視窗
C.1.4 最小化視窗
C.1.5 顯示並排視窗
C.1.6 顯示同一檔案的兩個部分
C.1.7 關掉不需要的標籤面板
C.1.8 保持對視窗的控制
C.1.9 定製日誌過濾器
C.1.10 在項目中搜尋
C.1.11 組織Eclipse任務
C.2 編寫Java代碼
C.2.1 善用自動補全(Autocomplete)
C.2.2 創建類和方法
C.2.3 組織導入
C.2.4 格式化代碼
C.2.5 重命名
C.2.6 重構代碼
C.2.7 整理代碼
C.2.8 使用QuickFix
C.2.9 提供Javadoc風格的檔案
C.2.10 解決詭異的構建錯誤
作者簡介
Lauren Darcey是一家專注於移動開發的軟體公司的技術主管,所涉及的技術包括Android、iPhone、Blackberry、Palm Pre、BREW和J2ME,還包括諮詢服務。擁有20年專業軟體產品研發經驗的Lauren被公認為企業架構和商業級移動套用開發的權威。Lauren獲得了加州大學聖克魯茲分校授予的計算機科學專業學士學位。
Shane Conder
Shane Conder擁有豐富的開發經驗,在過去的10年中,他把主要精力集中在移動和嵌入式開發領域,迄今已設計並開發了基於Android、iPhone、BREW、Blackberry、J2ME、Palm和Windows Mobile的諸多商業軟體。Shane撰寫了大量關於移動通信行業和評估移動開發平台的文章,這些文章發表在他的個人技術部落格上,在業界受到了廣泛的關注。Shane獲得了加州大學授予的計算機科學專業學士學位。