Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Extracts from "Memory Management for Android Apps"
Search
David Wu
July 06, 2011
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Extracts from "Memory Management for Android Apps"
Extracts from "Memory Management for Android Apps"
David Wu
July 06, 2011
More Decks by David Wu
See All by David Wu
Development with Vert.x: an event-driven application framework for the JVM
wuman
1
280
My Trip to Google I/O 2013
wuman
1
140
A Deep Dive into Open Source Android Development
wuman
18
1.5k
Fancy Rich Text on Android - Using Roguso as an Example
wuman
2
360
Fancy Rich Text Editing on Android - Invited Open Source Software Foundation Talk
wuman
1
750
Improving Android Application Performance (Invited Talk at National Taiwan University)
wuman
5
200
Challenges of Building HTC Sense (O'Reilly Android Open Conference 2011)
wuman
0
180
Extracts from "Android Protips: Advanced Topics for Expert Android App Developers"
wuman
0
320
GTK+ Programming using Vala
wuman
0
320
Other Decks in Programming
See All in Programming
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
200
VibeCodingからAgenticWorkflowへ
starfish719
0
820
FastAPI の並行処理モデルを完全に理解する
hoto17296
8
2.9k
ここ半年くらいでAIに作らせたR用ツール
eitsupi
0
400
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
110
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
240
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
370
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
500
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
280
今さら聞けない .NET CLI
htkym
0
210
AWS Transform Customによる Spring Boot 2.xから4.xへのVerUp
satoshi256kbyte
2
100
仕様駆動開発へのトライを機に チームに適合する手法を模索し続けている話
freee
PRO
0
600
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
630
Test your architecture with Archunit
thirion
2
2.4k
The Cult of Friendly URLs
andyhume
79
7k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
660
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
420
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
280
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
A better future with KSS
kneath
240
18k
Transcript
Extracts from "Memory Management for Android Apps" Taipei GTUG 20110706
Meetup (http://goo.gl/VdfLK) Original Presenter Patrick Dubroy @dubroy Extract Presenter David Wu @wuman blog.wu-man.com
2 @wuman David Wu
[email protected]
blog.wu-man.com
#tossug, #h4 HTC
3 In 10 Minutes...
4 Purpose Avoid OOM errors
5 Breakdown API Changes Heap size Garbage collection
Bitmap allocations Understanding heap usage Memory leaks Logcat Memory Analyzer (MAT)
6 Heap Size Heap size limits G1: 16MB
Droid: 24MB Nexus One: 32MB Xoom: 48MB ActivityManager.getMemoryClass()
7 Large Heaps <application android:name=”com.example.foobar” andorid:largeHeap=”true” … </application>
8 Garbage Collection
9 Garbage Collection
10 Garbage Collection
11 Garbage Collection
12 Garbage Collection < Gingerbread Stop-the-world Full
heap collection Pause times often > 100ms >= Gingerbread Concurrent (mostly) Partial collections Pause times usually < 5ms
13 Bitmaps (Old)
14 Bitmaps (New)
15 Memory Leaks
16 Logcat
17 Logcat
18 Logcat
19 Logcat
20 Logcat
21 Logcat
22 Heap Dumps Create with DDMS andorid.os.Debug.dumpHprofData()
Conversion hprof-conv orig.hprof converted.hprof Analyze with MAT
23 Shallow and Retained Heap
24 Dominator Tree
25 Demo Debugging a memory leak with MAT
26 Demo
27 References Video of the session http://goo.gl/KRrx7 Original
slides http://goo.gl/0RqIZ Patrick Dubroy's blog http://dubroy.com/blog/