Skip to content

Instantly share code, notes, and snippets.

@OrenBochman
Last active September 15, 2018 08:35
Show Gist options
  • Save OrenBochman/8e89888d800b31d6ccf8655b51db2bfd to your computer and use it in GitHub Desktop.
Save OrenBochman/8e89888d800b31d6ccf8655b51db2bfd to your computer and use it in GitHub Desktop.
Everything ADB (Android Debug Bridge) - scripts for Android Testing

Android testing ADB scripts

#!/usr/bin/env bash
set -e
EMULATOR_PROCESS_ID_FILE_PATH=~/.Nexus_25.pid
function open_device()
{
$ANDROID_HOME/emulator/emulator -avd Nexus_25 -no-boot-anim -no-audio -no-window > /dev/null &
echo $! > $EMULATOR_PROCESS_ID_FILE_PATH #pid of previous command execution
$ANDROID_HOME/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 10; done' #Wait until home screen gets displayed
}
function modify_settings()
{
$ANDROID_HOME/platform-tools/adb shell "settings put global window_animation_scale 0.0
"
$ANDROID_HOME/platform-tools/adb shell "settings put global transition_animation_scale 0.0"
$ANDROID_HOME/platform-tools/adb shell "settings put global animator_duration_scale 0.0"
#change whatever settings you wish to.
}
function restart_device()
{
$ANDROID_HOME/platform-tools/adb shell "su 0 am start -a android.intent.action.REBOOT"
$ANDROID_HOME/platform-tools/adb wait-for-device shell 'while [[ -z $(getprop sys.boot_completed) ]]; do sleep 10; done' #Wait until home screen gets displayed
}
function switch_off_device()
{
kill -9 $(cat $EMULATOR_PROCESS_ID_FILE_PATH) #Why this? Because we don't trust adb emu kill
rm $EMULATOR_PROCESS_ID_FILE_PATH
}
open_device
modify_settings
restart_device
switch_off_device
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment