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
270
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
350
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
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
310
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
330
Oxcを導入して開発体験が向上した話
yug1224
4
360
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
190
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
140
Performance Engineering for Everyone
elenatanasoiu
0
250
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
250
Go1.27で導入されるジェネリクスメソッドでできること
mackee
0
220
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
330
Honoでのサプライチェーン侵害対策 〜 3つのライブラリに学ぶ
yusukebe
7
1.6k
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
1k
Creating Composable Callables in Contemporary C++
rollbear
0
180
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
1
430
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
230
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Agile that works and the tools we love
rasmusluckow
331
22k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
The Cult of Friendly URLs
andyhume
79
6.9k
Leo the Paperboy
mayatellez
7
1.9k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
450
Mind Mapping
helmedeiros
PRO
1
270
Making Projects Easy
brettharned
120
6.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
450
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/