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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
David Wu
July 06, 2011
Programming
170
0
Share
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
260
My Trip to Google I/O 2013
wuman
1
120
A Deep Dive into Open Source Android Development
wuman
18
1.5k
Fancy Rich Text on Android - Using Roguso as an Example
wuman
2
340
Fancy Rich Text Editing on Android - Invited Open Source Software Foundation Talk
wuman
1
740
Improving Android Application Performance (Invited Talk at National Taiwan University)
wuman
5
190
Challenges of Building HTC Sense (O'Reilly Android Open Conference 2011)
wuman
0
170
Extracts from "Android Protips: Advanced Topics for Expert Android App Developers"
wuman
0
310
GTK+ Programming using Vala
wuman
0
310
Other Decks in Programming
See All in Programming
今さら聞けないCancellationToken
htkym
0
140
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
460
新規プロダクトを高速で生み出すハーネスエンジニアリング
seanchas116
3
220
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
2
470
ソースコード→AST→オペコード、の旅を覗いてみる
o0h
PRO
1
140
柔軟なPDFレイアウトエディタを支える型システム設計 — Discriminated UnionとConditional Typeの実践
minako__ph
2
260
プロパティの順序で型推論が壊れる!? TypeScript6.0の修正からContext-Sensitivityの仕組みを追う
bicstone
2
570
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
2.1k
色即是空、空即是色、データサイエンス
kamoneggi
1
140
自動レビューエンジンの実装と運用 ~レビューのない世界へ~
kurukuru1999
1
130
リセットCSSを1行消したらアクセシビリティが向上した話
pvcresin
4
520
GitHub Copilot CLIのいいところ
htkym
1
260
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Site-Speed That Sticks
csswizardry
13
1.2k
Building Adaptive Systems
keathley
44
3k
Side Projects
sachag
455
43k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Un-Boring Meetings
codingconduct
0
290
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
170
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
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/