Android套用性能最佳化

Android套用性能最佳化

《Android套用性能最佳化》是2012年人民郵電出版社出版的圖書,作者是[法] Hervé Guihot。本書主要介紹如何快速高效地最佳化套用,讓套用變得穩定高效。

基本介紹

  • 書名:Android套用性能最佳化
  • 作者:[法] Hervé Guihot
  • 譯者:白 龍
  • 出版社:人民郵電出版社
  • 出版時間:2012-10
基本信息,內容簡介,目錄,

基本信息

原作名: Pro Android Apps Performance Optimization
作者: [法] Hervé Guihot
譯者: 白 龍
出版社: 人民郵電出版社
出版年: 2012-10
頁數: 240
定價: 49.00元
裝幀: 平裝

內容簡介

今天的Android套用開發者經常要想盡辦法來提升程式性能。由於套用越來越複雜,這個問題也變得越來越棘手。本書主要介紹如何快速高效地最佳化套用,讓套用變得穩定高效。你將學會利用Android SDK和NDK來混合或單獨使用Java、C/C++來開發套用。書中還特別講解了如下內容:
· 一些OpenGL的最佳化技術以及RenderScript(Android的新特性)的基礎知識;
· 利用SDK來最佳化套用的Java代碼的技巧;
· 通過高效使用記憶體來提升性能的技巧;
· 延長電池使用時間的技巧;
· 使用多執行緒的時機及技巧;
· 評測剖析代碼的技巧。
把本書的內容學以致用,你的編程技術就會得到關鍵性的提升,寫出的套用就會更為健壯高效,從而廣受用戶好評,並最終獲得成功。 

目錄

第1章 Java代碼最佳化 
1.1 Android如何執行代碼 
1.2 最佳化斐波納契數列 
1.2.1 從遞歸到疊代 
1.2.2 BigInteger 
1.3 快取結果 
1.4 API等級 
1.5 數據結構 
1.6 回響能力 
1.6.1 推遲初始化 
1.6.2 StrictMode 
1.7 SQLite 
1.7.1 SQLite語句 
1.7.2 事務 
1.7.3 查詢
第1章 Java代碼最佳化 
1.1 Android如何執行代碼 
1.2 最佳化斐波納契數列 
1.2.1 從遞歸到疊代 
1.2.2 BigInteger 
1.3 快取結果 
1.4 API等級 
1.5 數據結構 
1.6 回響能力 
1.6.1 推遲初始化 
1.6.2 StrictMode 
1.7 SQLite 
1.7.1 SQLite語句 
1.7.2 事務 
1.7.3 查詢 
1.8 總結
第2章 NDK入門 
2.1 NDK里有什麼 
2.2 混合使用Java和C/C++代碼 
2.2.1 聲明本地方法 
2.2.2 實現JNI粘合層 
2.2.3 創建Makefile 
2.2.4 實現本地函式 
2.2.5 編譯本地庫 
2.2.6 載入本地庫 
2.3 Application.mk 
2.3.1 為(幾乎)所有設備最佳化 
2.3.2 支持所有設備 
2.4 Android.mk 
2.5 使用C/C++改進性能 
2.6 本地Acitivity 
2.6.1 構建缺失的庫 
2.6.2 替代方案 
2.7 總結
第3章 NDK進階 
3.1 彙編 
3.1.1 最大公約數 
3.1.2 色彩轉換 
3.1.3 並行計算平均值 
3.1.4 ARM指令 
3.1.5 ARM NEON 
3.1.6 CPU特性 
3.2 C擴展 
3.2.1 內置函式 
3.2.2 向量指令 
3.3 技巧 
3.3.1 內聯函式 
3.3.2 循環展開 
3.3.3 記憶體預讀取 
3.3.4 用LDM/STM替換LDR/STD 
3.4 總結
第4章 高效使用記憶體 
4.1 說說記憶體 
4.2 數據類型 
4.2.1 值的比較 
4.2.2 其他算法 
4.2.3 數組排序 
4.2.4 定義自己的類 
4.3 訪問記憶體 
4.4 排布數據 
4.5 垃圾收集 
4.5.1 記憶體泄漏 
4.5.2 引用 
4.6 API 
4.7 記憶體少的時候 
4.8 總結
第5章 多執行緒和同步 
5.1 執行緒 
5.2 AsyncTask 
5.3 Handler和Looper 
5.3.1 Handler 
5.3.2 Looper 
5.4 數據類型 
5.5 並發 
5.6 多核 
5.6.1 為多核修改算法 
5.6.2 使用並發快取 
5.7 Activity生命周期 
5.7.1 傳遞信息 
5.7.2 記住狀態 
5.8 總結
第6章 性能評測和剖析 
6.1 時間測量 
6.1.1 System.nanoTime() 
6.1.2 Debug.threadCpuTimeNanos() 
6.2 方法調用跟蹤 
6.2.1 Debug.startMethodTracing() 
6.2.2 使用Traceview工具 
6.2.3 DDMS中的Traceview 
6.2.4 本地方法跟蹤 
6.3 日誌 
6.4 總結
第7章 延長電池續航時間 
7.1 電池 
7.2 禁用廣播接收器 
7.3 網路 
7.3.1 後台數據 
7.3.2 數據傳輸 
7.4 位置 
7.4.1 註銷監聽器 
7.4.2 更新頻率 
7.4.3 多種位置服務 
7.4.4 篩選定位服務 
7.4.5 最後已知位置 
7.5 感測器 
7.6 圖形 
7.7 提醒 
7.8 WakeLock 
7.9 總結
第8章 圖形 
8.1 布局最佳化 
8.1.1 相對布局 
8.1.2 合併布局 
8.1.3 重用布局 
8.1.4 ViewStub 
8.2 布局工具 
8.2.1 層級視圖 
8.2.2 layoutopt 
8.3 OpenGL ES 
8.3.1 擴展 
8.3.2 紋理壓縮 
8.3.3 Mipmap 
8.3.4 多APK 
8.3.5 著色 
8.3.6 場景複雜性 
8.3.7 消隱 
8.3.8 渲染模式 
8.3.9 功耗管理 
8.4 總結
第9章 RenderScript 
9.1 概覽 
9.2 Hello World 
9.3 Hello Rendering 
9.3.1 創建渲染腳本 
9.3.2 創建RenderScriptGL Context 
9.3.3 展開RSSurfaceView 
9.3.4 設定內容視圖 
9.4 在腳本中添加變數 
9.5 HelloCompute 
9.5.1 Allocation 
9.5.2 rsForEach 
9.5.3 性能 
9.6 自帶的RenderScript API 
9.6.1 rs_types.rsh 
9.6.2 rs_core.rsh 
9.6.3 rs_cl.rsh 
9.6.4 rs_math.rsh 
9.6.5 rs_graphics.rsh 
9.6.6 rs_time.rsh 
9.6.7 rs_atomic.rsh 
9.7 RenderScript與NDK對比 
9.8 總結

相關詞條

熱門詞條

聯絡我們