Android開發模式和最佳實踐 Android开发模式和最佳实践

菲爾·達特森 (Phil Dutson)

買這商品的人也買了...

商品描述

本書首先介紹了安卓開發的基礎知識,包括如何搭建環境、一般的開發流程、給App添加測試用例等。接下來是組成安卓框架的各個模塊和組件,包括應用的結構,如何使用widget和component,以及怎麽使用view。然後介紹了應用的設計模式,以及如何創建一個方便管理和更新的App,包括如何添加多媒體和網絡連接等。本書後面部分也覆蓋了可選hardware組件、安卓Wear和安卓TV。最後介紹了一些關鍵的優化策略,以及如何打包App去通過企業系統、郵箱和Google Play Service進行發布。

目錄大綱

1.開發工具………………………………………………………………………1 
Android Studio ………………………………………… ……………………………1 
安裝Android Studio ………………………………………………………………………2 
使用Android Studio ………… ……………………………………………………………4 
啟動一個新項目………………………………………………………… …………………6 
獨立的SDK工具……………………………………………………………………9 
安卓設備模擬…………………… …………………………………………………10 
安卓虛擬設備……………………………………………………………………… ………11 
GenyMotion ………………………………………………………………………………12 
Xamarin安卓播放器………………………… ……………… …………………………13 
版本控制系統………………………………………………………………………14 
Subversion ………………… ………………………………………………………………14 
Git ……………………………………………………………… …………………………15 
Mercurial ……………………………………………………………………………………15 
總結………… ………………………………………………………………………16 

2.測試和調試……………………………………………… …………………17 
單元測試……………………………………………………………………………17 
集成測試…………………… ………………………………………………………20 
調試……………………………………………………………………… …………25 
Profiling ………………………… ………………………………………………………25 
Tracing ……………………………………………………………………… …………… 28 
Messaging ………………………………………………………………………………… 29 
總結………………………… ……………………………………………………… 32 

3.應用結構………………………………………………………………… … 33 
Manifest …………………………………………………………………………… 34 
Java ………………………………………… ……………………………………… 37 
Res(Resources) ………………………………………………………………… 37 
Drawable ……… …………………………………………………………………………… 37 
Layout ………………………………………………… …………………………………… 39 
Menu ……………………………………………………………………………………… 40 
Values …………………………………… ………………………………………………… 40 
其他Resource ………………………………………………………………………… …… 41 
Gradle ……………………………………………………………………………… 42 
總結…………………………………… …………………………………………… 43 

4.組件………………………………………………………………………… 45 
Intent ……………………………………………………………………………… 45 
Intent Filter …………………………………………… …………………………………… 46 
Broadcast Receiver ………………………………………………………………………… 47 
Activity ……… ……………………………… ………………………………… 48 
創建一個Activity ………………………………………………………………………… 49 
Activity生命週期… ……………………………………………………………………… 50 
Fragment ……………………………………………………… …………………… 52 
創建一個Fragment ……………………………………………………………………… 53 
與Fragment通信………………… ……………………………………………………… 56 
Loader ……………………………………………………………………… ……………… 57 
總結………………………………………………………………………………… 59 

5.View… ………………… ………………………………………………… 61 
View類………………………………………………………………………… … 61 
AnalogClock子類…… ……………………………………………………………… 62 
ImageView子類………………………………………………………… ………………… 62 
KeyboardView子類……………………………………………………………………… 63 
MediaRouteButton子類…………………… …………………………………………… 64 
ProgressBar子類……………………………………………………………………… 65 
Space子類………………………………………………………………………………… 66 
SurfaceView子類………………………………… …………………………………… 67 
TextView子類…………………………………………………………………………… 68 
TextureView子類……………………………………………………………………… 68 
ViewGroup子類……………………………………………… …………… …………… 69 
ViewStub子類…………………………………………………………………………… 71 
創建一個定制的View ……………… …………………………………………… 71 
總結………………………………………………………………………………… 74 

6.Layout… ………………………………………………………………… 75 
Layout基礎……………………………………………… ………………………… 75 
Layout Measurement ……………………………………………………………………… 76 
Layout坐標………………… …………………………………………………………… 77 
Layout Container ……………………………………………………………… …… 78 
Linear Layout ……………………………………………………………………………… 79 
Relative Layout ……………………………… ……… ………………………………… 80 
Table Layout ……………………………………………………………………………… 83 
Frame Layout … …………………………………………………………………………… 86 
WebView ………………………………………………… ………………………………… 87 
總結………………………………………………………………………………… 88 

7.App Widget … …………………………………………………………… 89 
App Widget Layout ………………………………………………………… ……… 90 
AppWidgetProviderInfo對象………………………………………………… 93 
App Widget尺寸……………………………………………………… ………………… 94 
更新頻率…………………………………………………………………………………… 94 
預覽圖片…………… …………… ………………………………………………………… 95 
Widget Category ………………………………………………………………… ………… 96 
Widget Category佈局…………………………………………………………………… 97 
Resizable模式………………………………… ………………………………………… 97 
AppWidgetProviderInfo對象實例…………………………………………………… 98 
AppWidgetProvider類………………… ……………………………………………… 98 
應用Manifest條目…………………………………………………………………… 101 
總結………………………………………………………………………………… 102 

8.應用設計:使用MVC … …………………………… ………………… 103 
Model ……………………………………………………………………………… 104 
View………… …………………………………………………………………… 105 
Controller ………………………………………………………… ……………… 106 
異步處理…………………………………………………………………………… 108 
AsyncTask ………………………… …………………………………………………… 109 
總結………………………………………………………………………… ……… 110 

9.繪圖和動畫……………………………………………………………… 111 
圖形………………………………………… ……………………………………… 111