Android開發(fā)實戰(zhàn)體驗

出版時間:2013-1  出版社:海洋出版社  作者:DevDiv移動開發(fā)社區(qū)  頁數(shù):296  字數(shù):510000  
Tag標簽:無  

內(nèi)容概要

  Android是移動開發(fā)三大平臺之一。本書是DevDiv移動開發(fā)社區(qū)版主、資深會員在該平臺實際開發(fā)經(jīng)驗的總結,通過大量原創(chuàng)示例全面介紹了Android應用開發(fā)的方法和技巧。全書共17章,包括Android系統(tǒng)框架與初始化流程、Activity簡介、常用UI界面以及實現(xiàn)、ListView使用詳解、定制控件、Drawable分類匯總、圖像操作技巧、布局優(yōu)化、消息模型、網(wǎng)絡通信、桌面組件AppWidget、系統(tǒng)服務、多媒體開發(fā)、圖片異步加載及緩沖、移動廣告平臺、代碼優(yōu)化技術和加解密等內(nèi)容??勺鳛锳ndroid初中級開發(fā)者參考用書,也可作為高等院校及社會培訓機構教材,還可作為自學人員學習用書。

作者簡介

  DevDiv覆蓋移動開發(fā)主流平臺Android、iOS、Windows Phone、Windows
8、HTML5和Symbian等,集資訊、論壇、博客、獵頭服務、技術培訓于一體,著有《移動開發(fā)全平臺解決方案——Android/iOS/Windows
Phone》、《Windows
Phone開發(fā)實戰(zhàn)體驗(應用+游戲)》和《iOS開發(fā)實戰(zhàn)體驗》,DevDiv已成長為國內(nèi)最具人氣的綜合性移動開發(fā)社區(qū)。

書籍目錄

第1章 Android系統(tǒng)架構與初始化流程
1.1 Android發(fā)展歷史回顧
1.2 系統(tǒng)架構
1.3 初始化流程
1.4 權限安全機制
第2章 Activity簡介
2.1 Activity的架構設計
2.2 Activity的生命周期
2.3 旋轉屏幕重新加載Activity
第3章 常用UI界面以及實現(xiàn)
3.1 緩沖界面
3.2 宮格界面
3.3 Tab界面
3.4 二級列表
3.5 抽屜效果
3.6 左右滑動效果
3.6.1 系統(tǒng)提供ViewFlipper
3.6.2 自定義ViewFlow
3.7 Gallery
3.8 懸浮框
第4章 ListView使用詳解
4.1 ListView與Adapter的關系
4.2 ListView綁定EmptyView
4.3 自定義Adapter
4.4 ListView的使用技巧
第5章 定制控件
5.1 擴展系統(tǒng)控件
5.2 自繪控件
5.3 觸屏事件處理
5.4 擴展ViewGroup類
5.5 定義控件屬性
5.6 定制控件的style和theme
第6章 Drawable分類匯總
6.1 ColorDrawable
6.2 GradientDrawable
6.3 BitmapDrawable6
6.4 NinePatchDrawable
6.5 InsetDrawable
6.6 ClipDrawable
6.7 ScaleDrawable
6.8 RotateDrawable
6.9 AnimationDrawable
6.10 LayerDrawable
6.11 LevelListDrawable
6.12 StateListDrawable
6.13 TransitionDrawable
第7章 圖像操作技巧
7.1 位圖資源
7.1.1 加載位圖資源
7.1.2 創(chuàng)建位圖資源
7.1.3 保存位圖資源
7.2 常用的位圖操作
7.2.1 View轉換為Bitmap
7.2.2 圖片圓角處理
7.2.3 圖片灰化處理
7.2.4 提取圖像Alpha位圖
7.2.5 圖像變換
7.3 內(nèi)存溢出(OOM)問題
第8章 布局優(yōu)化
8.1 復用布局文件
8.2 布局的層次結構
8.2.1 Hierachy Viewer
8.2.2 創(chuàng)建高效的布局
8.2.3 合并布局
8.2.4 提高控件查找效率
8.3 布局文件延遲加載
第9章 消息模型
9.1 UI線程
9.2 消息系統(tǒng)與消息模型
9.2.1 消息系統(tǒng)構成要素和基本原理
9.2.2 消息模型基本原理
9.2.3 消息模型使用方法
9.2.4 Handler常見用法
第10章 網(wǎng)絡通信
10.1 使用HttpURLConnection發(fā)送Post/Get請求
10.2 設置Proxy訪問網(wǎng)絡
10.3 實現(xiàn)文件下載斷點續(xù)傳
10.3.1 設計下載任務進度類DownloadBean
10.3.2 創(chuàng)建下載線程并可隨時中斷線程
10.3.3 設置網(wǎng)絡鏈接讀取資源的有效范圍
10.3.4 使用RandomAccessFile隨機讀寫文件
第11章 桌面組件AppWidget
11.1 AppWidget框架結構
11.1.1 AppWidget框架類
11.1.2 AppWidget框架相關類
11.2 AppWidget開發(fā)
11.2.1 AppWidgetProvider類的使用
11.2.2 AppWidget開發(fā)實例
11.2.3 實例改進
第12章 系統(tǒng)服務
12.1 系統(tǒng)服務簡介
12.2 系統(tǒng)服務開發(fā)
12.2.1 電源服務開發(fā)
12.2.2 窗口管理服務開發(fā)
12.2.3 Layout擴展服務開發(fā)
12.2.4 Activity服務開發(fā)
12.2.5 Notification服務開發(fā)
12.2.6 鬧鐘服務開發(fā)
12.2.7 KeyGuard服務開發(fā)
12.2.8 位置服務開發(fā)
12.2.9 Vibrator服務開發(fā)
第13章 多媒體開發(fā)
13.1 Android多媒體系統(tǒng)簡介
13.1.1 系統(tǒng)架構
13.1.2 系統(tǒng)功能
13.1.3 OpenCore簡介
13.1.4 OpenMAX簡介
13.2 MediaPlayer的使用
13.2.1 初始化和準備播放
13.2.2 播放控制
13.2.3 釋放播放資源
13.2.4 視頻播放
13.3 音頻視頻錄制
13.3.1 使用Intent錄制音頻和視頻
13.3.2 使用MediaRecorder錄制音頻和視頻
13.3.3 原始音頻錄制與播放
13.4 Camera使用
13.4.1 運用Intent捕獲照片
13.4.2 調用Camera組件捕獲照片
13.5 SoundPool類的使用
13.5.1 SoundPool類簡介與適用場合
13.5.2 使用SoundPool播放聲音
第14章 圖片異步加載及緩存
14.1 異步加載與緩存的重要性
14.2 垃圾回收機制與引用類型
14.2.1 Java的垃圾回收機制
14.2.2 Java引用類型
14.2.3 使用軟引用構建緩存
第15章 移動廣告平臺
15.1 移動應用平臺發(fā)展現(xiàn)狀
15.2 移動廣告平臺發(fā)展趨勢
15.3 移動廣告平臺的盈利模式
15.4 選擇廣告平臺
15.4.1 國內(nèi)移動廣告平臺簡介
15.4.2 平臺選擇參考標準
15.5 嵌入廣告插件
第16章 代碼優(yōu)化技術
16.1 編譯前的代碼優(yōu)化技術
16.1.1 盡可能避免創(chuàng)建不必要的對象
16.1.2 方法調用代碼優(yōu)化
16.1.3 代碼變量優(yōu)化
16.1.4 代碼過程優(yōu)化
16.2 內(nèi)存泄漏代碼優(yōu)化及檢測
16.2.1 內(nèi)存泄漏檢測工具——Memory Analyser Tool(MAT)
16.2.2 MAT使用示例
16.3 代碼混淆技術
16.3.1 ProGuard簡介
16.3.2 ProGuard使用
第17章 加解密
17.1 使用HASH算法(MD5/SHA1)保護應用程序的安全
17.2 使用對稱加密算法(BASE 64)隱藏關鍵信息
17.3 非對稱加密算法(RSA)的使用

章節(jié)摘錄

版權頁:   插圖:   3)刷新ListView的數(shù)據(jù) Adapter處于ListView和數(shù)據(jù)的中間,當有數(shù)據(jù)變化時需要Adapter通知ListView刷新顯示的內(nèi)容。Adapter提供了notifyDataSetChanged()和notifyDataSetInvalidated()兩"個方法通知ListView刷新。由于Android的UIThread不是線程安全的,所以對于Ul的所有操作都必須在UI線程中執(zhí)行。一般情況下是在非UI線程中更新Adapter使用的數(shù)據(jù),然后在UI線程中調用notifyDataSetChanged通知ListView刷新。當有數(shù)據(jù)更新時調用notifyDataSetChanged方法,當數(shù)據(jù)完全無效時調用notifyDataSetInvalidated方法。 4)Header和Footer ListView除了可以顯示Item,還可以顯示Header和Footer。它提供了addHeaderView和addFooterView方法添加Header和Footer,具體如下。 O public void addHeaderView(View v,Object data,boolean isSelectable) O public void addFooterView(View v,Object data,boolean isSelectable) 其中,參數(shù)View v作為ListView的footer或者header;Object data用來設置附加數(shù)據(jù),可以通過Adapter的getItem方法獲取;boolean isSelectable用來判斷footer或者header是否可選。提示 在給ListView設置Adapter之前,需要調用這兩個方法添加header或者footer,否則會出現(xiàn)異常。 當為ListView添加了Header或者Footer時,ListView會重新創(chuàng)建一個HeaderViewListAdapter來包裝之前的Adapter。 5)使用selector美化ListView 通過設置ListView的listSelector屬性,可以為Listview的Item設置選中、單擊等顯示效果。在Android中可以使用ListView的setSelector方法或者在xml文件中通過android:listSelector屬性來設置ListView的selector屬性。還可以設置ListView的android:drawSelectorOnTop屬性,把selector繪制在Item背景之后,顯示效果如圖4—11所示。 6)分割線 通過ListView的android:divider屬性或者setDivider方法可以修改Item之間的分割線。也可以為android:divider屬性設置圖片、顏色,或者設置為@drawable/@null(表示無分割線)。在使用android:divider屬性時,還可以使用dividerHeight屬性設置分割線占據(jù)的高度。下面是一段使用android:divider屬性的xml代碼片段,將顏色作為分割線,顯示效果如圖4—12所示。 7)使用transcriptMode和stackFromBottom屬性 ListView有兩個比較特殊的屬性:android:transcriptMode和android:stackFromBottom。使用transcriptMode屬性可以在有數(shù)據(jù)變化的時候讓ListView自動滾動到底部。它有以下3個可選項。 disabled——禁用transcriptMode屬性。 normal——如果最后一個Item可見,滾動到底部。 alwaysScroll——總是自動滾動到底部。 ListView顯示Item的時候通常是按從上到下的順序排列,使用stackFromBottom屬性可以設置Item從底部向上排列。通常在聊天、短信類型的應用中使用stackFromBottom和transcriptMode屬性可以得到很好的顯示效果,如圖4—13所示。

編輯推薦

《移動開發(fā)技術叢書:Android開發(fā)實戰(zhàn)體驗》編輯推薦:DevDiv移動開發(fā)社區(qū)版主、資深會員聯(lián)合編寫,章節(jié)設置全面涵蓋Android應用開發(fā)技術要點,原創(chuàng)案例細致呈現(xiàn)作者實際開發(fā)經(jīng)驗。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    Android開發(fā)實戰(zhàn)體驗 PDF格式下載


用戶評論 (總計2條)

 
 

  •   很適合開發(fā)人員使用,非常有針對性。
  •   收到翻了一下,還不錯。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7