== Adb Server adb kill-server adb start-server == Adb Reboot adb reboot adb reboot recovery adb reboot-bootloader == Shell adb shell // Open or run commands in a terminal on the host Android device. == Devices adb usb adb devices //show devices attached == LogCat adb logcat adb logcat -c // clear // The parameter -c will clear the current logs on the device. adb logcat -d > [path_to_file] // Save the logcat output to a file on the local system. adb bugreport > [path_to_file] // Will dump the whole device information like dumpstate, dumpsys and logcat output. == Files adb push [source] [destination] // Copy files from your computer to your phone. adb pull [device file location] [local file location] // Copy files from your phone to your computer. == App install adb -e install path/to/app.apk -d - directs command to the only connected USB device... -e - directs command to the only running emulator... -s ... -p ... The flag you decide to use has to come before the actual adb command: adb devices | tail -n +2 | cut -sf 1 | xargs -IX adb -s X install -r com.myAppPackage // Install the given app on all connected devices. == Uninstalling app from device adb uninstall com.myAppPackage adb uninstall adb uninstall -k -> "Uninstall .apk withour deleting data" adb shell pm uninstall com.example.MyApp adb devices | tail -n +2 | cut -sf 1 | xargs -IX adb -s X uninstall com.myAppPackage //Uninstall the given app from all connected devices == Update app adb install -r yourApp.apk // -r means re-install the app and keep its data on the device. adb install –k <.apk file path on computer> == Home button adb shell am start -W -c android.intent.category.HOME -a android.intent.action.MAIN == Activity Manager adb shell am start -a android.intent.action.VIEW adb shell am start -a android.intent.action.CALL -d tel:+972527300294 // Make a call // Open send sms screen with phone number and the message: adb shell am start -a android.intent.action.SENDTO -d sms:+972527300294 --es sms_body "Test --ez exit_on_sent false == Print text adb shell input text 'Wow, it so cool feature' == Screenshot adb shell screencap -p /sdcard/screenshot.png $ adb shell shell@ $ screencap /sdcard/screen.png shell@ $ exit $ adb pull /sdcard/screen.png --- adb shell screenrecord /sdcard/NotAbleToLogin.mp4 $ adb shell shell@ $ screenrecord --verbose /sdcard/demo.mp4 (press Control + C to stop) shell@ $ exit $ adb pull /sdcard/demo.mp4 == Key event adb shell input keyevent 3 // Home btn adb shell input keyevent 4 // Back btn adb shell input keyevent 5 // Call adb shell input keyevent 6 // End call adb shell input keyevent 26 // Turn Android device ON and OFF. It will toggle device to on/off status. adb shell input keyevent 27 // Camera adb shell input keyevent 64 // Open browser adb shell input keyevent 66 // Enter adb shell input keyevent 67 // Delete (backspace) adb shell input keyevent 207 // Contacts adb shell input keyevent 220 / 221 // Brightness down/up adb shell input keyevent 277 / 278 /279 // Cut/Copy/Paste // https://developer.android.com/reference/android/view/KeyEvent.html == Monkey adb shell monkey -p com.myAppPackage -v 10000 -s 100 // monkey tool is generating 10.000 random events on the real device == Other adb backup // Create a full backup of your phone and save to the computer. adb restore // Restore a backup to your phone. adb sideload // Push and flash custom ROMs and zips from your computer. fastboot devices // Check connection and get basic information about devices connected to the computer. // This is essentially the same command as adb devices from earlier. //However, it works in the bootloader, which ADB does not. Handy for ensuring that you have properly established a connection. -------------------------------------------------------------------------------- Shared Preferences # replace org.example.app with your application id # Add a value to default shared preferences. adb shell 'am broadcast -a org.example.app.sp.PUT --es key key_name --es value "hello world!"' # Remove a value to default shared preferences. adb shell 'am broadcast -a org.example.app.sp.REMOVE --es key key_name' # Clear all default shared preferences. adb shell 'am broadcast -a org.example.app.sp.CLEAR --es key key_name' # It's also possible to specify shared preferences file. adb shell 'am broadcast -a org.example.app.sp.PUT --es name Game --es key level --ei value 10' # Data types adb shell 'am broadcast -a org.example.app.sp.PUT --es key string --es value "hello world!"' adb shell 'am broadcast -a org.example.app.sp.PUT --es key boolean --ez value true' adb shell 'am broadcast -a org.example.app.sp.PUT --es key float --ef value 3.14159' adb shell 'am broadcast -a org.example.app.sp.PUT --es key int --ei value 2015' adb shell 'am broadcast -a org.example.app.sp.PUT --es key long --el value 9223372036854775807' # Restart application process after making changes adb shell 'am broadcast -a org.example.app.sp.CLEAR --ez restart true' --------------------------------------------------------------------------------