Android App 效能改善:48個掌握App運行流暢的技巧(iThome鐵人賽系列書)【軟精裝】

  • 9 612
    680

配送方式

  • 台灣
    • 國內宅配:本島、離島
    • 到店取貨:
      金石堂門市 不限金額免運費
      7-11便利商店 ok便利商店 萊爾富便利商店 全家便利商店
  • 海外
    • 國際快遞:全球
    • 港澳店取:
      ok便利商店 順豐 7-11便利商店

內容簡介

提升APP品質與效能,打造良好使用者體驗

 

本書內容改編自第 14 屆 iThome 鐵人賽 Mobile Development 組佳作系列文章《Android app 效能優化》。本書用48個具體且實用的方法來提升 Android app 的效能。由於效能是影響 App 品質的一個重要因素,一款 App 的效能表現直接影響到使用者體驗。不論你是 Android 新手還是資深開發者,這本書都會帶領你掌握 App 效能改善的技巧,使你的 App 更流暢、反應更迅速,從而獲得更多使用者的認可與好評。

 

本書將深入地探討了如何從不同角度和層面來提升 App 的效能。從基礎效能概念開始,涵蓋了 Layout 的編排、記憶體使用、背景任務管理、效能監控及撰寫效能測試等範疇。透過範例詳細解析效能問題發生的原因,並提供具體的解決策略。書中不僅教你如何觀察相關指標,更重要的是引領讀者學會如何避免常見的效能陷阱。

 

【目標讀者】

→希望提升App品質的開發新手

→覺得App反應緩慢,需要解決效能問題的開發者

→想要進一步提升App效能的開發者

 

作者

陳瑞忠(Evan)

 

一位Android開發者,同時擁有多年的Web開發經驗,熱衷於研究Android相關的知識與技術,經常在Medium上分享技術文章,偶爾也擔任講者與大家交流心得。近期也在線上教學平台上開了8堂Android課程,希望能夠幫助更多的人加入APP開發的領域。

 

iThome 鐵人賽獲獎

2022 Mobile Development 組佳作:

Android app 效能優化

 

2020 Mobile Development 組佳作:

Android TDD 測試驅動開發

 

2019 Software Development 組佳作:

Android animation 30天上手

 

Medium:medium.com/@evanchen76

 

目錄

CHAPTER 01 效能基本概念
1.1 選擇合適的資料結構
1.2 延遲初始化與延遲載入
1.3 使用快取 Cache
1.4 使用單例模式 Singleton Pattern
1.5 使用物件池 Object Pool
1.6 Kotlin Collection 的效能考量
1.7 避免頻繁建立物件

CHAPTER 02 避免 ANR(Application Not Responding)
2.1 在背景執行緒處理耗時工作
2.2 使用執行緒池 Thread Pool
2.3 使用 StrictMode 找出在主執行緒的異常請求

CHAPTER 03 Android 基本效能概念
3.1 了解 Activity 生命週期及改善效能
3.2 了解 Fragment 生命週期及改善效能
3.3 使用 RecyclerView 與 Diff
3.4 縮短 App 的啟動時間
3.5 精簡 App 的大小
3.6 提升圖片資源的效能改善

CHAPTER 04 背景任務管理與省電策略
4.1 Android 的省電策略:Doze、Hibernation 和 Standby Buckets
4.2 使用 WorkManager 執行背景任務
4.3 使用 AlarmManager 在特定時間執行背景任務
4.4 使用 Foreground service 前景服務
4.5 背景任務小結

CHAPTER 05 Layout 效能改善
5.1 使用 ConstraintLayout 減少 View 的階層
5.2 使用 Include 重用 Layout
5.3 使用 Merge 減少 Layout 階層
5.4 使用 ViewStub 延遲 View 的載入
5.5 檢測版面配置 - 使用 Layout Inspector
5.6 減少畫面的重複繪製
5.7 檢測畫面的重複繪製
5.8 檢測 GPU Rendering

CHAPTER 06 記憶體效能改善
6.1 避免 Memory leak 記憶體洩漏
6.2 正確使用 Application context 與 Activity context
6.3 使用 WeakReference 弱引用
6.4 使用 LeakCanary 檢測記憶體洩漏
6.5 使用 Profiler 找出記憶體的異常使用

CHAPTER 07 網路請求的效能改善
7.1 使用成熟的 Open Source 函式庫
7.2 透過快取及資料載入策略來減少網路請求
7.3 使用 Network Inspector 監看網路使用狀況

CHAPTER 08 UI 狀態管理與效能
8.1 使用 onSaveInstanceState 保存資料
8.2 使用 ViewModel 保存資料

CHAPTER 09 儲存資料以改善資源請求
9.1 DataStore 與 SharedPreferences 的效能改善
9.2 使用 Room 資料庫的效能改善
9.3 資料儲存小結

CHAPTER 10 效能監控管理工具
10.1 使用 Lint 找出潛在的效能問題
10.2 使用 Google Play Vitals 監控 App 的效能
10.3 Firebase Performance Monitoring

CHAPTER 11 撰寫效能測試
11.1 撰寫 Microbenchmark 效能測試
11.2 撰寫 Macrobenchmark 效能測試

CHAPTER 12 從 UX 改善主觀效能感受
12.1 提升 App 主觀效能感受的 UX 設計策略
12.2 使用 Splash Screen 改善 App 的啟動體驗
12.3 改善 Activity 頁面切換動畫與預載資訊

CHAPTER 13 總結

詳細資料

詳細資料

    • 語言
    • 中文繁體
    • 裝訂
    • 紙本平裝
    • ISBN
    • 9786263335981
    • 分級
    • 普通級
    • 頁數
    • 288
    • 商品規格
    • 23*17
    • 出版地
    • 台灣
    • 適讀年齡
    • 全齡適讀
    • 注音
    • 級別

商品評價

訂購/退換貨須知

加入金石堂 LINE 官方帳號『完成綁定』,隨時掌握出貨動態:

加入金石堂LINE官方帳號『完成綁定』,隨時掌握出貨動態
金石堂LINE官方帳號綁定教學

提醒您!!
金石堂及銀行均不會請您操作ATM! 如接獲電話要求您前往ATM提款機,請不要聽從指示,以免受騙上當!

退換貨須知:

**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**

  • 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
    1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
    2. 依消費者要求所為之客製化給付。(客製化商品)
    3. 報紙、期刊或雜誌。(含MOOK、外文雜誌)
    4. 經消費者拆封之影音商品或電腦軟體。
    5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
    6. 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
  • 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
  • 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
  • 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
※ 本商品讀享日金幣加碼回饋最高7倍
預計 2024/05/09 出貨 購買後進貨 
金石堂門市 全家便利商店 ok便利商店 萊爾富便利商店 7-11便利商店
World wide