-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Android 6開發秘籍(第5版)

( 簡體 字)
作者:[美]Joseph Annuzzi,Jr., Lauren Darcey,Shane Conder著 郭華豐 劉杰 周云龍 譯類別:1. -> 程式設計 -> 手機程式 -> Android
譯者:
出版社:清華大學出版社Android 6開發秘籍(第5版) 3dWoo書號: 45970
詢問書籍請說出此書號!

缺書
NT售價: 490

出版日:1/1/2017
頁數:565
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302455813
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

Android是風靡于全球、自由且開源的移動平臺,已經迅速占領移動開發市場。本書為軟件開發小組提供了很多專業指導,包括如何設計、開發、測試、調試和發布專業的 Android 應用。如果你是一位經驗豐富的移動開發人員,可能會關注于簡化開發流程的提示和技巧,并充分利用Android的特性。如果你是移動開發新手,那么本書也同樣可以幫助你順利地從傳統軟件領域過渡到移動開發——確切地說,就是最有前途的Android平臺。
本書讀者對象
本書包含多年來從移動領域成功項目中總結出來的技巧,也提供開發人員從項目設想到最終實現所需知道的一系列知識。書中涵蓋了移動端軟件開發流程與傳統軟件開發流程的區別,以及一些可以幫助節省寶貴時間、發現和解決避免陷阱的實用技巧。不論項目規模有多大,本書都適用。
本書讀者對象包括:
● 有志于開發專業Android應用的工程師。本書大部分內容都適用于那些有Java 經驗,但不一定做過移動端開發的軟件人員。對于經驗更豐富的移動開發人員,他們也能從本書中學到如何充分利用Android系統的優勢,并了解Android系統和當今市面上流行的其他移動平臺的本質區別。
● 有志于測試 Android 應用的QA人員。無論他們面對的是黑盒還是白盒測試,QA人員都會覺得本書很有價值。我們專門占用幾個章節來分析QA人員所關心的問題,包括如何制定可靠的測試計劃、移動端的問題追蹤系統、如何管理手機,以及如何利用Android提供的可用工具來徹底測試應用等。
● 有志于規劃和管理Android開發團隊的項目經理。項目經理們在整個項目流程中,都可借助本書來制定計劃、招聘人員,以及運作Android項目。我們會討論項目的風險管理,以及如何讓Android項目的運作更加順暢。
● 其他讀者。本書除了適用于軟件開發人員外,也適用于那些想在垂直市場應用領域掘金,或者是想規劃很優秀的手機應用的人,抑或是單純只想在自己手機上找點樂子的業余愛好者。甚至是想評估Android是否符合它們需求(包括可行性分析)的商人們,也會在本書中找到一些有價值的信息。任何對移動應用有好想法,或者是自己有Android設備的人,都可以從中獲益,無論他們是為了賺錢,還是興趣使然。
本書所要闡述的一些關鍵問題
本書為讀者解答了如下疑問:
(1) Android是什么?各個SDK 版本有何不同?
(2) Android和其他移動技術有什么區別,開發人員又該如何利用這些差異?
(3) 開發人員如何使用 Android Studio和 Android SDK 工具,在模擬器或真實設備上開發和調試 Android 應用?
(4) Android 應用是如何組織的?
(5) 開發人員如何設計出可靠的移動端用戶界面—— 特別是針對Android系統的界面?
(6) Android SDK有哪些功能?開發人員又該如何正確地使用它們?
(7) 什么是材質設計(Material Design),為什么它很重要?
(8) 移動端開發流程和傳統桌面型應用的開發流程有何區別?
(9) 針對Android開發的最好策略是什么?
(10) 經理、開發人員或測試人員在規劃、開發和測試移動應用時,應該關注哪些方面?
(11) 移動團隊如何開發出優質的Android應用?
(12) 移動團隊如何對Android 應用打包以便部署?
(13) 移動團隊如何從 Android 應用獲利?
(14) 最后,作者在本次改版中添加了哪些新內容?
本書的編排結構
本書的側重點在于Android開發過程中的一些精華部分,包括設置開發環境、理解應用的生命周期、用戶界面設計、面向多種不同類型的設備進行開發,以及設計、開發、測試和發布商業級應用的整個軟件流程。
本書分為6大部分。下面是對各部分的概述:
● 第Ⅰ部分:Android平臺概述
第Ⅰ部分介紹Android入門知識,闡述了它與其他移動平臺的區別。你會逐漸熟悉Android 的SDK工具,安裝開發平臺,以及編寫和運行第一個Android應用——在模擬器上和在真機上。很多開發人員和測試人員(特別是白盒測試人員)對這一部分應該會尤其感興趣。
● 第Ⅱ部分:應用基礎
第Ⅱ部分介紹編寫 Android 應用的一些設計原則。將介紹Android應用的結構,以及如何在項目中導入資源,例如字符串、圖像和用戶界面元素等。了解Android中的核心用戶界面元素View。還將介紹Android SDK提供的很多常用的用戶界面控件和布局。開發人員對這一部分應該會感興趣。
● 第Ⅲ部分:應用設計基礎
第Ⅲ部分深入研究如何在Android中設計應用。將介紹材質設計、樣式和應用中常用的設計模式。還將介紹如何設計和規劃應用。開發人員對這一部分應該會感興趣。
● 第Ⅳ部分:應用開發基礎
第Ⅳ部分討論大多數 Android 應用會用到的特性,包括使用preferences來存儲應用數據;如何使用文件、文件夾、SQLite和內容提供者(content provider)。開發人員對這一部分應該會感興趣。
● 第Ⅴ部分:應用交付基礎
第Ⅴ部分討論完整的移動端軟件開發流程,為項目管理人員、軟件開發人員、用戶界面設計人員及QA人員提供了很多建議和技巧。
● 第Ⅵ部分:附錄
第Ⅵ部分包括了很多有用的附錄信息,幫助你運行和使用重要的Android工具。本部分包括了Android Studio開發工具的提示和技巧,對Android SDK開發工具的概述,三個有用的Android開發工具快速入門指南——模擬器、Device Monitor和Gradle,以及每章最后的測試題的答案。
本次改版所做的修改
當我們開始撰寫本書第1版時,市面上還沒有Android設備。現如今全球已經有數以億計的 Android 設備了(與數千種不同的設備型號)——手機、平板電腦、電子書閱讀器、智能手表以及一些有特色的設備,例如游戲主機、電視和谷歌眼鏡。另外,其他一些設備,諸如Google Chromecast之類的設備還可以讓Android設備和電視實現屏幕共享。
與本書第1版出版時的Android平臺相比,Android平臺已經發生了非常大的變化。Android SDK有很多新的特性,開發工具也有不少必需的升級。Android系統作為一種科技平臺,已然是移動市場領域的王者。
在這一版本中,我們借此機會加入了豐富的信息。但不用擔心,讀者仍然會像前幾個版本一樣喜愛這個最新版本;只是現在它更強大,覆蓋面更廣,還加入了不少最佳實踐建議。除新增了文字內容外,還對所有現存的內容(文本和范例代碼)進行了升級,并且使用了最新的Android SDK(當然,它們是向后兼容的)。我們提供了測試題來幫助讀者確認是否已經很好地掌握了每章的學習重點;我們還在章節末尾添加了練習題,讓讀者可以更深入地理解Android系統。有各種不同的Android 開發社區,而我們的目標就是面向所有的開發人員—— 不管他們的目標設備是什么。這其中也包括了那些希望為幾乎所有平臺提供服務的開發人員。因而一些老式 SDK的關鍵部分在本書中仍然被保留下來——它們通常是考慮兼容性時最合理的選擇。
在這一版本中,我們做了如下改進和升級:
● 整本書已經升級為最新的Android Studio IDE。本書以前的版本包含了 Eclipse IDE。所有的內容、圖像和代碼示例已經根據Android Studio做了更新。此外,還包含了最新和最優秀的Android工具和實用程序。
● “定義清單文件”一章覆蓋了新的 Android 6.0 Marshmallow(棉花糖,API級別23)權限模式,并提供了展示新權限模式的示例代碼。
● 增加了全新的一章“材質設計”,演示了開發人員如何將常見的材質設計功能集成到應用中,并提供了示例代碼。
● 增加了全新的一章“使用樣式”,介紹如何更好地組織樣式和重用常用UI組件,以便優化顯示渲染,并提供了示例代碼。
● 增加了全新的一章“架構設計模式”,包含了應用架構的各種設計模式的內容,并提供了示例代碼。
● 增加了全新的一章“使用SQLite保存數據”包含了使用數據庫持久化應用數據的內容,并提供了示例代碼。
● 包含了使用 Android Studio的提示和技巧的一個附錄。
● 包含了Gradle構建系統的一個附錄,以幫助了解Gradle是什么,以及為什么它很重要。
● AdvancedLayouts示例代碼已被更新,GridView和ListView組件將分別使用Fragment類和ListFragment類。
● 一些示例代碼,包括使用了新Toolbar的ActionBar示例,并使用支持庫,以便兼容運行老版本API的設備。必要時,更新應用清單文件以便支持父-子Activity關系,從而支持向上導航。
● 許多示例代碼使用了AppCompatActivity類和appcompat-v7 支持庫。
● 所有章節和附錄現在都有小測試和練習題,以便讀者可以評估學習成果。
● 所有章節都已更新,通常還伴隨著一些全新的章節。
● 所有的示例代碼和相應的應用都已升級,以保證可在最新SDK中運行。
如你所見,本書涵蓋與Android相關的所有最熱門的、最令人興奮的特性。我們重新評估現有章節,更新內容,同時也添加了一些新章節。最后,還包含了很多附加的內容、聲明,以及針對各位讀者的回饋所做的修正。謝謝你們!
本書所用的開發環境
本書中的Android代碼是在以下開發環境中編寫的:
● Windows 7、8和Mac OS X 10.9
● Android Studio 1.3.2
● Android SDK API Level 23 (在本書中為Android Marshmallow)
● Android SDK Tools 24.3.4
● Android SDK Platform Tools 23.0.0
● Android SDK Build Tools 23.0.0
● Android Support Repository 17(在適當時使用)
● Java SE Development Kit (JDK) 7 Update 55
● Android設備:Nexus 4、5和6(手機),Nexus 7(第一代和第二代7英寸平板電腦),Nexus 9和10 (大尺寸平板電腦), 以及其他各式流行設備。
Android在與其他移動平臺(例如,Apple iOS、Windows Phone和Blackberry OS)的競爭中,仍然保持高速增長。不斷有各種令人興奮的Android新設備涌現。開發人員已經把Android 列為用戶今后一段時間的選擇重點。
Android最近的一次平臺重大升級是Android Marshmallow,它帶來許多新功能。本書涵蓋最新的SDK和可用工具。本書旨在幫助開發人員支持市面上所有流行的設備,而不僅僅是一部分特殊機器。在本書撰寫階段,大概有9.7%的用戶的設備運行著Android Lollipop 5.0或5.1,而Android Marshmallow尚未在實際設備上發布。當然,有些設備將通過在線方式進行升級,有些用戶將會購買新的Lollipop和Marshmallow設備。但對于開發人員而言,他們要面對的是各種不同版本的Android平臺,以便能覆蓋到這一領域的大部分設備。另外, Android的下一個版本很可能在近期發布。
那么這些對本書意味著什么呢?這意味著我們既要提供對以前API的支持,也要討論Android SDK中出現的那些新API。我們從兼容性角度討論了支持所有(至少是大部分)用戶設備所需要采用的策略。我們提供了截屏圖片來重點突出不同版本的 Android SDK的差異,因為任何大的版本升級在UI外觀上都會體現出來。換句話說,我們假設你正在下載最新的 Android 工具,所以提供了撰寫本書時的屏幕截圖和操作步驟。
本書的編寫約定
本書使用了如下約定:
● 代碼是以等寬字體格式提供的。
● Java的import語句、異常處理,以及錯誤檢測通常會從書稿中移除,以便代碼清晰,并將篇幅控制在合理范圍之內。
本書也以如下幾種形式提供了相關信息:

提示
提供有用的信息或有關當前文本的提示。

注意
提供額外的、可能很有趣的相關信息。

警告
提供一些可能遇到的陷阱,以及規避它們的實用建議。
內容簡介:

每位Android應用開發者都應該知道的:
Android 6工具、應用/UI設計、測試和發布等
 《Android 6開發秘籍(第5版) 是一本緊貼實用的精品指南,介紹如何借助Android 6 SDK、Android Studio以及最新的開發最佳實踐來構建健壯的商業級Android應用。這一版的內容更豐富、優質、詳實,涵蓋開始為新式Android設備開發專業應用需要掌握的所有知識。如果你想成為Android開發高手,本書將助你一臂之力,幫你構建任何你能想象的應用!
  三位備受尊崇的專家在書中指導你設置開發環境、設計用戶界面、為不同設備開發應用以及優化整個應用開發過程。許多章節都包含多個示例應用,最新的代碼清單指引你深刻領悟關鍵的API功能。
  本書新增了介紹材質設計、設置應用樣式、設計模式以及SQLite查詢的章節,增加了闡述Gradle構建系統的附錄,并列出關于Android Studio使用技巧的大量提示,堪稱一座知識寶庫。
目錄:

第Ⅰ部分Android平臺概述

第1章Android概述3

1.1Android開源項目(AOSP)3

1.2開放手機聯盟4

1.2.1Google進入移動市場4

1.2.2開放手機聯盟介紹4

1.2.3加入開放手機聯盟5

1.2.4制造商:設計Android

設備5

1.2.5移動運營商:提供Android

體驗5

1.2.6應用驅動設備的銷售:

開發Android應用6

1.2.7利用所有Android設備的

優勢6

1.2.8Android:我們現在取得的

進展7

1.3Android平臺的獨特性7

1.3.1Android的由來8

1.3.2自由和開放源代碼8

1.3.3熟悉且廉價的開發工具9

1.3.4合理的開發學習曲線9

1.3.5功能強大的應用開發支持9

1.3.6豐富和安全的應用集成10

1.3.7沒有昂貴的開發費用10

1.3.8應用的“自由市場”10

1.3.9一個不斷發展的平臺11

1.4Android平臺11

1.4.1Android的底層架構11

1.4.2安全和權限13

1.4.3探索Android應用14

1.5OHA和GMS之外的Android

版本17

1.5.1AmazonFireOS17

1.5.2CyanogenOS和

CyanogenMod17

1.5.3MakerMovement和開源

硬件18

1.5.4保持警覺18

1.6本章小結18

1.7小測驗18

1.8練習題19

1.9參考資料和更多信息19

第2章設置開發環境21

2.1配置你的開發環境21

2.1.1配置操作系統以便進行

設備調試24

2.1.2配置Android硬件以便

進行調試24

2.1.3更新AndroidStudio26

2.1.4更新AndroidSDK26

2.1.5AndroidStudio存在的

問題27

2.1.6AndroidSDK存在的問題27

2.1.7AndroidStudio的替代者:

IntelliJIDEA27

2.2探索AndroidSDK28

2.2.1了解AndroidSDK許可

協議28

2.2.2閱讀AndroidSDK文檔29

2.2.3探索Android應用框架

核心30

2.2.4探索Android核心工具31

2.2.5探索Android示例應用35

2.3本章小結36

2.4小測驗37

2.5練習題37

2.6參考資料和更多信息37

第3章創建第一個Android應用39

3.1測試開發環境39

3.1.1在AndroidStudio中導入

BorderlessButtons示例40

3.1.2使用預裝的AVD運行

BorderlessButtons項目42

3.1.3在Android模擬器中運行

BorderlessButtons應用42

3.2構建第一個Android應用44

3.2.1創建并配置一個新的

Android項目44

3.2.2了解Android符號視圖和

傳統Project視圖48

3.2.3Android應用的核心文件和

目錄49

3.2.4在模擬器中運行Android

應用50

3.2.5在模擬器中調試Android

應用52

3.2.6為Android應用增加日志

記錄55

3.2.7在硬件設備上調試應用57

3.3本章小結58

3.4小測驗59

3.5練習題59

3.6參考資料和更多信息59

第Ⅱ部分應用基礎

第4章理解應用組件63

4.1掌握重要的Android術語63

4.2應用Context64

4.2.1獲取應用Context64

4.2.2使用應用Context64

4.3使用Activity執行應用任務65

4.4使用Fragment組織Activity

組件71

4.5使用Intent管理Activity之間的

切換72

4.5.1通過Intent切換Activity73

4.5.2通過Activity、Fragment

和Intent來組織應用導航75

4.6使用服務75

4.7接收和廣播Intent76

4.8本章小結77

4.9小測驗77

4.10練習題77

4.11參考資料和更多信息78

第5章定義清單文件79

5.1使用Android清單文件配置

Android應用79

5.2管理應用ID82

5.3設置應用的系統需求83

5.3.1設置應用的平臺需求84

5.3.2其他應用配置設置和

過濾器86

5.4在Android清單文件注冊

Activity86

5.4.1使用Intent過濾器為應用

指定主入口Activity87

5.4.2配置其他Intent過濾器87

5.4.3注冊其他應用組件88

5.5訪問權限88

5.5.1注冊應用所需的權限89

5.5.2注冊應用強制的權限91

5.6探索清單文件的其他設置92

5.7本章小結93

5.8小測驗93

5.9練習題93

5.10參考資料和更多信息94

第6章管理應用的資源95

6.1資源的含義95

6.1.1存儲應用資源95

6.1.2資源類型96

6.1.3以編程方式訪問資源99

6.2在AndroidStudio中添加簡單

的資源值100

6.3使用不同類型的資源103

6.3.1使用字符串資源103

6.3.2使用格式化的字符串

資源104

6.3.3使用帶數量的字符串105

6.3.4使用字符串數組106

6.3.5使用布爾類型資源107

6.3.6使用整型資源108

6.3.7使用顏色資源108

6.3.8使用尺寸資源109

6.3.9以編程方式使用尺寸

資源110

6.3.10可繪制資源110

6.3.11使用圖像112

6.3.12使用顏色狀態列表114

6.3.13使用動畫115

6.3.14使用菜單117

6.3.15使用XML文件119

6.3.16使用原始文件119

6.3.17引用資源120

6.4使用布局122

6.4.1在AndroidStudio中設計

布局123

6.4.2以編程方式使用布局

資源125

6.5引用系統資源126

6.6本章小結127

6.7小測驗127

6.8練習題127

6.9參考資料和更多信息128

第7章探討構建塊129

7.1Android視圖和布局介紹129

7.1.1Android視圖129

7.1.2Android控件129

7.1.3Android布局130

7.2使用TextView向用戶顯示

文本130

7.2.1配置布局和大小131

7.2.2在文本中創建上下文

鏈接132

7.3使用文本字段從用戶端獲取

數據134

7.3.1使用EditText控件獲取

輸入文本134

7.3.2使用輸入過濾器限制用戶

輸入135

7.3.3使用自動完成功能幫助

用戶136

7.4使用Spinner控件讓用戶

選擇138

7.5使用Button和Switch允許

用戶簡單選擇139

7.5.1使用基本Button140

7.5.2使用CheckBox和

ToggleButton控件142

7.5.3使用RadioGroup和

RadioButton143

7.6使用Picker獲取日期、時間

和數字145

7.7使用Indicator為用戶顯示

進度和活動148

7.7.1使用ProgressBar指示

進度148

7.7.2向ActionBar添加進度

指示器149

7.7.3使用ActivityBar和Activity

Circle指示Activity150

7.8使用SeekBar調整進度151

7.9其他有價值的用戶界面

控件152

7.9.1使用RatingBar顯示評分

數據152

7.9.2使用Chronometer顯示

時間的流逝153

7.9.3顯示時間154

7.9.4使用VideoView播放

視頻155

7.10本章小結156

7.11小測驗156

7.12練習題156

7.13參考資料和更多信息157

第8章布局設計159

8.1在Android中創建用戶界面159

8.1.1使用XML資源文件創建

布局159

8.1.2以編程方式創建布局161

8.2組織用戶界面164

8.2.1使用ViewGroup子類來

設計布局164

8.2.2使用ViewGroup子類作為

View容器164

8.3使用內置的布局類165

8.3.1使用LinearLayout167

8.3.2使用RelativeLayout168

8.3.3使用FrameLayout171

8.3.4使用TableLayout173

8.3.5使用GridLayout176

8.3.6在屏幕上使用多個布局179

8.4使用容器控件類180

8.4.1使用數據驅動的容器180

8.4.2添加滾動支持184

8.4.3探索其他View容器185

8.5本章小結186

8.6小測驗186

8.7練習題187

8.8參考資料和更多信息187

第9章用Fragment拆分用戶

界面189

9.1理解Fragment189

9.1.1了解Fragment的生命

周期191

9.1.2管理Fragment修改191

9.1.3使用特殊類型的

Fragment192

9.1.4設計基于Fragment的

應用193

9.2使用Android支持庫包202

9.2.1為舊應用添加Fragment

支持202

9.2.2在新應用中針對舊平臺

使用Fragment203

9.2.3將Android支持包鏈接到

項目203

9.3使用Fragment的其他方式204

9.3.1沒有用戶界面的行為

Fragment205

9.3.2探索嵌套的Fragment205

9.4本章小結205

9.5小測驗205

9.6練習題206

9.7參考資料和更多信息206

第Ⅲ部分應用設計基礎

第10章架構設計模式211

10.1應用的導航架構211

10.1.1Android應用導航場景212

10.1.2啟動任務和導航回

退棧214

10.1.3Fragment導航215

10.1.4屏幕之間的關系215

10.1.5Android導航設計模式216

10.2引導操作223

10.2.1菜單223

10.2.2操作欄223

10.2.3浮動操作按鈕227

10.2.4來自應用上下文的

操作229

10.2.5對話框229

10.3本章小結237

10.4小測驗237

10.5練習題237

10.6參考資料和更多信息237

第11章使用樣式239

11.1樣式支持239

11.2主題和樣式240

11.2.1定義默認應用主題240

11.2.2主題和樣式繼承241

11.3顏色242

11.4布局243

11.4.1合并與包含244

11.4.2TextInputLayout245

11.4.3FloatingActionButton245

11.4.4工具欄作為底部欄246

11.5應用個性化247

11.6運用后的效果249

11.7排版250

11.8本章小結251

11.9小測驗252

11.10練習題252

11.11參考資料和更多信息252

第12章材質設計255

12.1理解材質255

12.2默認材質主題256

12.3SampleMaterial應用256

12.4實現SampleMaterial應用257

12.4.1依賴257

12.4.2材質支持樣式257

12.4.3顯示List中的數據集257

12.5本章小結282

12.6小測驗282

12.7練習題283

12.8參考資料和更多信息283

第13章設計兼容的應用285

13.1最大化應用的兼容性285

13.2設計兼容的用戶界面287

13.2.1使用Fragments288

13.2.2使用各種Android支持庫

API288

13.2.3支持特定的屏幕類型289

13.2.4使用九宮格可拉伸

圖形289

13.3提供替代應用資源290

13.3.1了解資源是如何被

解析的290

13.3.2使用限定符組織替代

資源291

13.3.3為不同屏幕方向提供

資源296

13.3.4以編程方式使用替代

資源298

13.3.5高效組織應用的資源299

13.4平板、電視設備299

13.4.1針對平板設備300

13.4.2針對電視設備300

13.5讓應用兼容手表和汽車302

13.6使用SafetyNet保證兼容性302

13.7本章小結303

13.8小測驗304

13.9練習題304

13.10參考資料和更多信息304

第Ⅳ部分應用開發基礎

第14章使用Android首選項309

14.1使用應用首選項309

14.1.1確定首選項是否合適309

14.1.2保存不同類型的首選

項值310

14.1.3創建Activity私有的

首選項310

14.1.4創建多個Activity使用的

共享首選項310

14.1.5查找和讀取首選項311

14.1.6添加、更新和刪除

首選項311

14.1.7監聽首選項的變化312

14.2在文件系統中定位首選項

數據312

14.3創建可管理的用戶首選項313

14.3.1創建首選項資源文件314

14.3.2使用PreferenceActivity

類316

14.3.3通過標頭管理首選項318

14.4自動備份Android應用321

14.5本章小結322

14.6小測驗322

14.7練習題323

14.8參考資料和更多信息323

第15章訪問文件和目錄325

15.1使用設備上的應用數據325

15.2實現良好的文件管理326

15.3了解Android系統中的文件

權限326

15.4使用文件和目錄327

15.4.1探索Android應用的

目錄328

15.4.2使用Android文件系統

中的其他目錄和文件332

15.5本章小結335

15.6小測驗335

15.7練習題335

15.8參考資料和更多信息336

第16章使用SQLite保存數據337

16.1使用SQLite升級

SampleMaterial應用337

16.2使用數據庫337

16.2.1提供數據訪問339

16.2.2更新SampleMaterialActivity

類340

16.2.3更新SampleMaterialAdapter

構造函數341

16.2.4在主UI線程以外執行

數據庫操作342

16.2.5在數據庫中創建卡片343

16.2.6獲取所有卡片344

16.2.7添加新卡片345

16.2.8更新卡片346

16.2.9刪除卡片347

16.3本章小結348

16.4小測驗349

16.5練習題349

16.6參考資料和更多信息349

第17章使用內容提供者351

17.1探索Android的內容

提供者351

17.1.1使用Mediastore內容

提供者352

17.1.2使用CallLog內容

提供者355

17.1.3使用CalendarContract

內容提供者356

17.1.4使用UserDictionary

內容提供者357

17.1.5使用VoicemaillContract

內容提供者357

17.1.6使用Settings內容

提供者357

17.1.7介紹ContactsContract

內容提供者357

17.2修改內容提供者數據360

17.2.1添加記錄360

17.2.2更新記錄361

17.2.3刪除記錄362

17.3使用第三方內容提供者363

17.4本章小結363

17.5小測驗364

17.6練習364

17.7參考資料和更多信息364

第Ⅴ部分應用交付基礎

第18章學習開發工作流369

18.1Android開發流程概覽369

18.2選擇正確的軟件方法論370

18.2.1理解瀑布開發模式的

危險性370

18.2.2理解迭代的價值370

18.3收集應用的需求371

18.3.1明確項目需求371

18.3.2為Android應用編寫

用例373

18.3.3結合第三方的需求和

建議374

18.3.4維護一個設備數據庫374

18.4評估項目風險377

18.4.1確定目標設備377

18.4.2獲取目標設備379

18.4.3確定應用需求的

可行性379

18.4.4理解QA的風險380

18.5編寫重要的項目文檔381

18.5.1為保證產品質量制定

測試計劃381

18.5.2為第三方提供需要的

文檔382

18.5.3為維護和移植提供

文檔382

18.6使用配置管理系統382

18.6.1選擇源碼管理系統382

18.6.2實現一個可用的應用

版本系統382

18.7設計Android應用383

18.7.1理解設備的資源限制383

18.7.2探討通用的Android

應用架構383

18.7.3設計應用的可擴展性和

易維護性384

18.7.4設計應用間的通信

方式385

18.8開發Android應用385

18.9測試Android應用386

18.10部署Android應用387

18.11支持和維護Android應用387

18.11.1跟蹤并解決用戶提交的

崩潰報告388

18.11.2測試固件升級388

18.11.3維護詳細的應用

文檔388

18.11.4管理服務端的在線

變化388

18.11.5識別低風險的移植

機會388

18.11.6應用功能的選擇389

18.12本章小結389

18.13小測驗389

18.14練習題389

18.15參考資料和更多信息389

第19章規劃用戶體驗391

19.1思考目標391

19.1.1用戶目標391

19.1.2團隊目標392

19.1.3其他利益相關者的

目標392

19.2集中研發精力的一些技巧392

19.2.1人物角色393

19.2.2用戶故事圖譜393

19.2.3發現和組織實體394

19.2.4規劃用戶交互394

19.3傳遞應用標識395

19.4設計屏幕的布局396

19.4.1草稿圖396

19.4.2線框圖397

19.4.3綜合設計圖397

19.5正確處理視覺反饋397

19.6觀察目標用戶398

19.6.1應用仿真模型398

19.6.2測試發布版本399

19.7本章小結399

19.8小測驗399

19.9練習題400

19.10參考資料和更多信息400

第20章交付質量可靠的應用401

20.1設計可靠應用的最佳實踐401

20.1.1滿足Android用戶的

需求402

20.1.2為Android設備設計

用戶界面402

20.1.3設計穩定并即時響應的

Android應用403

20.1.4設計安全的Android

應用404

20.1.5將應用利潤最大化405

20.1.6遵循Android應用的

質量指導方針405

20.1.7采用第三方質量標準407

20.1.8開發易于維護和升級的

Android應用407

20.1.9利用Android的工具

輔助應用的設計409

20.2避免在Android應用中犯

低級錯誤409

20.3開發可靠Android應用的

最佳實踐409

20.3.1設計適用于Android開發的研發流程410

20.3.2盡早并經常測試應用的

可行性410

20.3.3使用編碼標準、審閱及

單元測試來改進代碼

質量410

20.3.4處理單個設備中出現的

缺陷412

20.3.5利用Android工具來

開發413

20.3.6避免在Android應用

開發中犯低級錯誤413

20.4本章小結414

20.5小測驗414

20.6練習414

20.7參考資料和更多信息414

第21章測試應用417

21.1測試移動應用的最佳實踐417

21.1.1設計移動應用的缺陷追

蹤系統417

21.1.2管理測試環境419

21.1.3讓測試覆蓋率最大化421

21.1.4利用Android的SDK

工具來測試應用427

21.1.5避免Android應用測試

中的一些低級錯誤428

21.2Android應用測試精要428

21.2.1利用JUnit進行單元

測試429

21.2.2PasswordMatcher應用

簡介430

21.2.3確認測試的預期結果433

21.2.4為測試代碼創建一個

運行配置433

21.2.5編寫測試代碼436

21.2.6在AndroidStudio中

運行你的第一個測試438

21.2.7分析測試結果438

21.2.8添加其他測試439

21.3更多Android自動化測試

程序和API442

21.4本章小結442

21.5小測驗443

21.6練習題443

21.7參考資料和更多信息443

第22章分發應用445

22.1選擇正確的分發模型445

22.1.1保護你的知識產權446

22.1.2遵循GooglePlay的

政策446

22.1.3向用戶收費447

22.2為即將發布的應用打包448

22.2.1為打包工作準備好

代碼448

22.2.2打包應用并簽名450

22.2.3測試用于發布的

應用包453

22.2.4包含所有需要的資源453

22.2.5準備好你的服務器或者

服務453

22.2.6發布應用453

22.3在GooglePlay中發布應用453

22.3.1登錄GooglePlay454

22.3.2將應用上傳到Google

Play457

22.3.3上傳應用營銷相關的

資源458

22.3.4配置定價和發布詳情458

22.3.5配置額外的應用選項459

22.3.6管理其他開發人員控制臺

選項460

22.3.7將應用發布到Google

Play460

22.3.8在GooglePlay中管理

應用461

22.4GooglePlay上的階段性

展示產品462

22.5通過GooglePlay私有渠道

發布應用462

22.6翻譯應用462

22.7通過其他方式發布應用463

22.8自行發布應用464

22.9本章小結465

22.10小測驗465

22.11練習題465

22.12參考資料和更多信息466

第Ⅵ部分附錄

附錄A提示與技巧:Android

Studio469

附錄B快速入門指南:Android

模擬器481

附錄C快速入門指南:Android設備

監視器507

附錄D精通AndroidSDK工具523

附錄E快速入門:Gradle構建

系統539

附錄F小測驗答案557

序: