-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
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高性能編程

( 簡體 字)
作者:葉坤類別:1. -> 程式設計 -> 手機程式 -> Android
譯者:
出版社:電子工業出版社Android高性能編程 3dWoo書號: 48476
詢問書籍請說出此書號!

缺書
NT售價: 495

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

譯者序:

前言:

序言
應用程序在移動世界中能否成功,性能是其中一個關鍵的因素。如果一個應用程序運行緩慢,用戶可能會放棄繼續使用它。學習如何創建一個應用程序,讓程序在速度、性能,以及功能交互之間達到平衡,將會是一個挑戰。做到這點比以往任何時候都更重要。
《Android高性能編程》將讓你學習到如何讓程序能夠運行到盡可能多的硬件設備上,使得應用程序覆蓋更多用戶。這本書首先簡要地介紹了Android開發中一些最先進的技術,以及性能對Android應用程序的重要性。接著,介紹了使用Android SDK工具,對Android應用程序進行調試和分析的常規做法。本書將討論一些先進的主題,例如,打造布局、多線程、網絡以及安全。電池電量是應用程序的最大瓶頸之一,本書將通過典型的代碼,闡釋如何減少電量消耗,以及在不同情形下如何測量電量的消耗。
本書探討的技術,是為打造一個優化高效的系統。這是一個不會消耗大量電量,或引起內存泄露,隨著時間的推移,運行越來越慢的系統。
這本書涵蓋了什么
第1章,引言:為什么需要高性能?對主題進行概要介紹,簡要分析了Android平臺的現狀,以及高性能對Android應用程序的重要性。
第2章,高效調試。涵蓋了調試和分析Android應用程序常用的一些工具, 不僅限于Android SDK 所提供的,還包括一些第三方的。
第3章,打造布局。展示優化Android程序的相關技術,編寫內存高效的應用程序,并介紹內存分配以及垃圾回收的相關概念。
第4章,內存。提供了許多UI設計方面的見解,通過學習這些內容,打造加載迅速,更新高效,不會令用戶察覺到延遲的UI界面。
第5章,多線程。介紹了Android應用程序中可供使用的各種線程,以及它們特定的使用場景。一些先進的技術,例如IPC,將會通過代碼示例來展示。
第6章,網絡。介紹了高效操作網絡的相關技術,以及從服務端獲取數據的一些技術,例如指數退避算法或避免輪詢。
第7章,安全。涵蓋了確保Android應用程序安全的相關技術,如何利用Android自帶的安全加密機制,以及如何獲取關于連接的信息,或者只是在連接變化的時候得到通知。
第8章,優化電量消耗。通過典型的代碼,演示如何耗盡電池的電量,如何阻止它,以及在各種情形下如何權衡電量的消耗;許多開發者不知道,開發一個拍照或錄制視頻的應用程序時,任何處理預覽以及保存數據。
第9章,Android中的原生代碼。這一章節將全部用于介紹Android中的原生代碼和C++以及它們的用法。
第10章,性能提示。幫助開發者在平時的開發中,避開影響效率的方案;這是前面章節中未涉及的一個最佳實踐指南。
你需要準備什么?
你需要準備以下硬件設備。
? 運行環境為Windows、Linux,或者Mac OS X 的PC/筆記本電腦。
? Android手機。最好是高端一點的,并且系統版本高于Android5.0。
這本書為誰而寫?
這本書是為那些已經擁有豐富Android知識,想要進一步鞏固和學習技術,來提高應用程序性能的開發者而寫的。我假設他們已經熟悉整個Android SDK,且為此工作了多年。他們也熟悉Android框架,比如,能使用NDK編寫原生代碼,NDK對性能來說至關重要。
約定
本書會涉及幾種不同的文本樣式,分別代表不同類型的信息。下面展示了其中一些樣式及它們代表的意思。
代碼文本、數據庫表名、文件名、文件擴展名、路徑、URLs、用戶輸入,以及推特賬號名的文本樣式如下。
“If you go to this folder and call the command adb, you will see on the screen a list of available options.”
代碼塊的格式如下。
<resources>
<style name=”Theme.NoBackground”parent=”android:Theme”>
<item name=”android:windowBackground”>@null</item>
</style>
</resources>
任何命令行輸入輸出的格式如下。
adb shell dumbsys gfxinfo <PACKAGE_NAME>
新條款以及重要的詞會以黑體展示。屏幕上顯示的單詞,例如菜單或者對話框內出現的文本格式類似這樣:“To debug the overdraw on the device,Android provides a helpful tool that can be enabled inside the Developer options.”

警告或重要提示或出現這樣一個框框中。
內容簡介:

本書旨在為Android開發者指明提高應用程序性能的方向。第1章就什么是高性能,為什么需要高性能展開討論。第2章為讀者展示了一些用于調試應用程序的工具,方案以及技巧。第3-8章,圍繞著布局,內存,多線程,網絡,安全,電量消耗,等多個方面,闡述如何打造高性能應用程序。第9章相對獨立,介紹的是原生開發。第10章與前面章節的關系也不大,涵蓋了一些瑣碎,但對性能至關重要的提示,例如,圖像處理,序列化,優化APK文件等等。

目錄:

1 引言:為什么需要高性能? 1
為什么應用程序的性能意味著這么多? 2
手動測試和自動測試 3
ANR和軟件中的延遲 3
什么會觸發ANR,我該如何避免它們? 4
Android架構 4
Dalvik虛擬機 5
內存管理 5
電量消耗 6
Java語言 7
NDK/在需要時進行原生開發 7
程序響應相關的3個臨界值 8
軟件質量的商業價值 8
總結 9
2 高效調試 11
ADB 11
DDMS 12
采集和分析線程信息 14
堆分析和可視化 16
Allocation Tracker 19
網絡使用 20
Emulator Control 22
系統狀態 23
調試UI 24
使用Hierarchy Viewer 26
Systrace 28
Android設備調試選項 29
Android即時運行 38
GPU分析器 39
使用GPU分析器進行調試 41
ClassyShark 42
開始使用 42
總結 46
3 打造布局 47
預覽 47
渲染性能 47
屏幕撕裂和垂直同步 50
多窗口模式 57
最佳實踐 63
布局概述 64
布局層次管理 64
布局復用 70
ViewStub 73
AdapterView和視圖回收 74
自定義視圖和布局 78
屏幕縮放 83
調試工具 84
Design窗口 85
Hierarchy Viewer 86
設備上的調試工具 90
Systrace 97
總結 101
4 內存 103
預覽 103
內存如何工作 104
垃圾回收 104
內存共享 104
運行時 105
Android N 即時編譯器 106
內存泄露 107
內存抖動 108
引用 108
內存相關的項目 109
最佳實踐 111
數據類型 111
語法 117
常量 123
對象管理 124
內存設計模式 129
Android組件泄露 137
進程 150
內存API 151
主要組件和內存管理 153
調試工具 156
LogCat 156
ActivityManager API 159
StrictMode 160
Dumpsys 161
總結 168
5 多線程 169
預覽 169
線程基礎 170
Android多線程環境 174
Android應用程序線程 175
Android線程消息 176
最佳實踐 179
線程 179
HandlerThread 179
AsyncTask 181
Loaders 185
Services 188
進程間通信 197
先進的技術 202
調試工具 210
StrictMode 210
總結 211
6 網絡 213
預覽 213
協議 215
方法 216
頭部 216
超時 217
內容 217
響應碼 218
連接類型 218
最佳實踐 219
延遲測定 219
批量連接 221
對響應進行緩存 222
指數退避算法 226
輪詢VS推送 228
所提供的API 229
Android N帶來的新變化 234
調試工具 243
Android N網絡ADB工具 244
Fiddler 244
Wireshark 245
Application Resource Optimizer 246
網絡衰減 248
模擬網絡加速和延遲 248
總結 252
7 安全 255
WhatsApp – 連續出現問題 256
深入代碼 258
捕獲APK文件 259
從設備上拉取APK文件 259
利用Wireshark捕獲APK文件 260
利用外部網站 261
剖析APK文件 262
代碼注入 267
操作碼 270
注入新代碼 270
簽名并重新構建應用程序 273
保護應用程序 274
非安全存儲 277
SharedPreferences 277
內部存儲 278
外部存儲 280
刪除文件 282
使用外部存儲還是內部存儲 282
數據庫 283
數據庫中的性能 284
SQL注入 284
ORM框架 286
OrmLite 286
SugarORM 287
GreenDAO 288
Realm 289
網絡 289
通信加密 290
嗅探 290
總結 292
8 優化電量消耗 295
分析 295
監測電池電量和充電狀態 298
識別充電狀態的變化 299
確定及響應電池電量的變化 300
Doze和App Standby 301
理解Doze 301
避免無用的網絡請求 302
按需對待BroadcastReceivers 304
網絡 305
總結 306
9 Android中的原生代碼 309
入門——在系統中配置NDK 310
JNI 311
基本概念 312
創建首個JNI程序HelloWorld-JNI 313
使用Android NDK創建一個原生Activity 318
調試NDK 321
Android.mk 324
NDK定義的變量 325
TARGET_PLATFORM 325
TARGET_ARCH 325
TARGET_ABI 326
NDK提供的宏 326
Application.mk 327
引入已存在的庫 329
導出頭文件 330
總結 330
10 性能提示 333
位圖 333
加載 334
處理 340
緩存 341
顯示 346
管理內存 348
圖像優化 352
分辨率 353
壓縮 354
序列化 354
JSON的改進 354
JSON的替代品 356
本地序列化 363
代碼改進 363
Getter和Setter 364
內部類 365
Android N中的Java 8 368
設置 368
特性 368
Jack工具鏈 372
APK優化 374
移除未使用的代碼 374
移除未使用的資源 374
總結 376
序: