37
Android Development Tools Dominik Helleberg | inovex Gmbh

Android Development Tools

Embed Size (px)

DESCRIPTION

WJAX 2012 München Android development tools #jaxcon

Citation preview

Page 1: Android Development Tools

Android Development Tools Dominik Helleberg | inovex Gmbh

Page 2: Android Development Tools

Dominik Helleberg

Mobile Development

Android

HTML5

http://dominik-helleberg.de/+

http://twitter.com/_cirrus_

Page 3: Android Development Tools
Page 4: Android Development Tools

Emulator

Page 5: Android Development Tools

Emulator VM-Acceleration

Android 2.3

API 10 x86

Android 4.0.3

API 15

x86

intel HAXM

Mac OSX (intel)

Windows (intel)

Page 6: Android Development Tools

Emulator VM-Acceleration

Android 2.3

API 10 x86

Android 4.0.3

API 15

x86

KVM

Linux (intel + AMD)

Page 7: Android Development Tools

Emulator GPU-Acceleration

OpenGL

Windows / Linux / Mac OSX

Android 4

API >=15 x86 / ARM

Page 8: Android Development Tools

Emulator Kompatibilität

API Level VM GPU

2.2 (API 8)

2.3 (API 10)

3.X (API 11-13)

4.0.3 (API 15)

4.1.1 (API 16)

Page 9: Android Development Tools

Emulator HW-Acceleration

770

10179

5360

0

2000

4000

6000

8000

10000

12000

Emulator Emulator VM + GPU Galaxy Nexus

AnTuTu Benchmark

Page 10: Android Development Tools

Emulator HW-Acceleration

„caution“ by Michael Raskop | www.flickr.com/photos/huskyte/7512877940/

Page 11: Android Development Tools

Emulator Skalierung

Page 12: Android Development Tools

Emulator Skalierung

Page 13: Android Development Tools

Emulator Telnet interface

Page 14: Android Development Tools

Emulator Tools

ADB

Page 15: Android Development Tools

shell tools

Page 16: Android Development Tools

dumpsys SurfaceFlinger bluetooth_a2dp entropy meminfo samplingprofiler usb accessibility clipboard gfxinfo mount search vibrator account connectivity hardware netpolicy sensorservice wallpaper activity content input_method netstats simphonebook wifi alarm country_detector iphonesubinfo network_management sip wifip2p appwidget cpuinfo isms nfc statusbar window audio device_policy location notification telephony.registry media.audio_flinger backup devicestoragemonitor package textservices media.audio_policy media.camera battery diskstats permission throttle batteryinfo drm.drmManager phone uimode bluetooth dropbox media.player power usagestats

Page 17: Android Development Tools

dumpsys meminfo – 4.0.3 Applications Memory Usage (kB): Uptime: 3419841 Realtime: 3419841 ** MEMINFO in pid 1866 [de.inovex.samples] ** Shared Private Heap Heap Heap Pss Dirty Dirty Size Alloc Free ------ ------ ------ ------ ------ ------ Native 1168 1024 1108 8492 7430 189 Dalvik 6759 11204 6220 14599 14429 170 Cursor 0 0 0 Ashmem 3002 4 3000 Other dev 4 0 0 .so mmap 582 1724 112 .jar mmap 0 0 0 .apk mmap 152 0 0 .ttf mmap 3 0 0 .dex mmap 200 0 0 Other mmap 498 12 24 Unknown 669 668 624 TOTAL 13037 14636 11088 23091 21859 359 Objects Views: 51 ViewRootImpl: 2 AppContexts: 3 Activities: 2 Assets: 2 AssetManagers: 2 Local Binders: 6 Proxy Binders: 13 Death Recipients: 1 OpenSSL Sockets: 0 SQL heap: 0 MEMORY_USED: 0 PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0

Page 18: Android Development Tools

dumpsys meminfo – 2.3.3 Applications Memory Usage (kB): Uptime: 1195390 Realtime: 1195390 ** MEMINFO in pid 1323 [de.inovex.samples] ** native dalvik other total size: 8456 5379 N/A 13835 allocated: 8425 2828 N/A 11253 free: 6 2551 N/A 2557 (Pss): 727 322 8415 9464 (shared dirty): 1496 1872 6972 10340 (priv dirty): 652 36 6720 7408 Objects Views: 0 ViewRoots: 0 AppContexts: 0 Activities: 0 Assets: 2 AssetManagers: 2 Local Binders: 6 Proxy Binders: 12 Death Recipients: 1 OpenSSL Sockets: 0 SQL heap: 0 MEMORY_USED: 0 PAGECACHE_OVERFLOW: 0 MALLOC_SIZE: 0

Page 19: Android Development Tools

procrank PID Vss Rss Pss Uss cmdline 7924 50172K 50172K 28401K 24164K de.inovex.samples 1015 48056K 48056K 25635K 21348K com.android.launcher 887 47492K 47492K 22768K 17040K system_server 961 38732K 38732K 16637K 12372K com.android.systemui 794 40040K 40040K 14686K 8736K zygote 993 29860K 29860K 9293K 5452K com.android.phone 974 28776K 28776K 8404K 4716K com.android.inputmethod.latin 793 6832K 6832K 3660K 2760K /system/bin/surfaceflinger 796 7292K 7292K 3412K 2196K /system/bin/mediaserver 795 2892K 2892K 939K 524K /system/bin/drmserver 790 1276K 1276K 559K 420K /system/bin/netd 797 800K 800K 516K 460K /system/bin/dbus-daemon 804 456K 456K 440K 440K /sbin/adbd 788 904K 904K 412K 348K /system/bin/vold 9050 600K 600K 355K 344K procrank 792 916K 916K 340K 280K /system/bin/rild 799 616K 616K 230K 188K /system/bin/keystore 798 456K 456K 174K 160K /system/bin/installd

Page 20: Android Development Tools

am display-size 600x800

Page 21: Android Development Tools

Hierarchy Viewer

Page 22: Android Development Tools

Allocation Tracker

Page 23: Android Development Tools

traceview / systrace / tracer

„Longue pose A15 pont collège côté Cergy 2 RET“ by GemMoth | http://www.flickr.com/photos/gemmoth/3426209850/

Page 24: Android Development Tools

traceview

Page 25: Android Development Tools

systrace

Page 26: Android Development Tools

systrace

Page 27: Android Development Tools

tracer

Page 28: Android Development Tools

lint

Page 29: Android Development Tools

Hprof / MAT

Page 30: Android Development Tools

ddmlib.jar

ADB ddmlib.jar

device.getBatteryLevel();device.getScreenshot();device.installPackage(...);

Page 31: Android Development Tools

Sneak Preview ADT 21

Page 32: Android Development Tools

Multi-Configuration-Preview

Page 33: Android Development Tools

Templates

Page 34: Android Development Tools

AVD – Device Defintions

Page 35: Android Development Tools

Gradle Build System buildscript  {  

 repositories  {                  mavenCentral()          }          dependencies  {                  classpath  'com.android.tools.build:gradle:0.2'

           }  }  apply  plugin:  'android'    android  {          target  =  'android-­‐15’  }    

Page 36: Android Development Tools

Links http://tools.android.com/download/adt-21-preview https://plus.google.com/113735310430199015092/posts/XTKTamk4As8 https://dl.dropbox.com/u/231329/android/templatedocs/index.html https://github.com/jgilfelt/android-adt-templates http://tools.android.com/tech-docs/new-build-system/using-the-new-build-system

Page 37: Android Development Tools

DANKE!

http://inovex.mobi/wjax-2012/