[ Home | About | Licence | About author | Contact ]

Written by Oleksandr Gavenko (AKA gavenkoa), compiled at 2015-10-05 from rev 764bb173578d.

Android.

Package repositories.

https://play.google.com/
Google package repository.
https://f-droid.org/
Free software repository.

Link to package description page:

Connect to Android via USB by adb.

Add udev rule for fix permission issues:

$ cat /etc/udev/rules.d/90-android.rules

# Standard Google device.
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", ATTR{idProduct}=="0c03", MODE="0666", GROUP="plugdev"
# China N101 II
SUBSYSTEM=="usb", ATTR{idVendor}=="2207", ATTR{idProduct}=="0010", MODE="0666", GROUP="plugdev"

Reload udev rules and re-plug device via USB:

$ sudo service udev force-reload

See:

http://developer.android.com/tools/device.html
Setting up a Device for Development.

Recovery.

To enter phone to recovery mode press VolumeDown``+``Power button or:

adb reboot recovery

See:

http://teamw.in/project/twrp2
Custom recovery built.

ADB tips.

List available devices:

$ adb devices

Install application from .apk file:

$ adb install -r /path/to/application.apk

List installed package names (with path to .apk files!):

$ adb shell 'pm list packages -f'

Uninstall application by its package name:

$ adb uninstall PACKAGE_NAME

Disable/enable application:

$ adb shell pm disable PACKAGE_NAME
$ adb shell pm enable PACKAGE_NAME

List of disabled packages:

$ adb shell pm list packages -d

List currently run activities:

$ adb shell 'dumpsys activity'

Find activities from package:

$ adb shell 'pm list packages -f'
$ adb pull APK_FROM_LIST
$ aapt dump badging APK_FILE

Start an activity:

$ adb shell am start PACKAGE_NAME/ACTIVITY_IN_PACKAGE
$ adb shell am start PACKAGE_NAME/FULLY_QUALIFIED_ACTIVITY

Start an activity with action filter:

android# am start -a com.example.ACTION_NAME -n com.package.name/com.package.name.ActivityName

List of running processes:

$ adb shell ps

or (supported arguments user,group,comm,args,pid,ppid,pgid,etime,nice,rgroup,ruser,time,tty,vsz,stat,rss):

$ adb shell
% ps -o pid,user,group,rss,vsz,args

To kill process:

$ adb shell ps | grep $REGEX
$ adb shell kill $PID

To stop application:

$ adb shell am kill com.google.android.contacts
$ adb shell am force-stop com.google.android.contacts

Take a screenshort:

$ adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png

Power button:

$ adb shell input keyevent 26

Unlock screen:

$ adb shell input keyevent 82

Show system log:

$ adb logcat
$ adb logcat "*:W"

List partition.

List partitions (with sizes):

android# cat /proc/partitions
android# cat /proc/mtd

List mounted file systems:

android# mount
android# df

Show screencast from Android.

http://droid-at-screen.ribomation.com/
Easily show the screen of an Android device on a computer/laptop (PC, Mac, Linux, ...) and then project the desktop using a LCD-projector.