1#!/bin/bash 2# 3# android_install_app: installs the Skia development apps on the device. 4 5function print_usage { 6 echo "USAGE: android_install_app [options] AppName" 7 echo " Options: -f Forces the package to be installed by removing any" 8 echo " previously installed packages" 9 echo " -h Prints this help message" 10 echo " --release Install the release build of Skia" 11 echo " -s [device_s/n] Serial number of the device to be used" 12 echo " AppName Can be either SampleApp or VisualBench" 13} 14 15SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 16 17source $SCRIPT_DIR/android_setup.sh 18source $SCRIPT_DIR/utils/setup_adb.sh 19 20forceRemoval="false" 21app="" 22 23for arg in ${APP_ARGS[@]}; do 24 if [[ "${arg}" == "-f" ]]; then 25 forceRemoval="true" 26 elif [[ "${arg}" == "-h" ]]; then 27 print_usage 28 exit 29 elif [[ "${arg}" == "-r" ]]; then 30 echo "DEPRECATED: -r is now a no-op" 31 elif [[ ${arg} == '-'* ]]; then 32 echo "ERROR: unrecognized option ${arg}" 33 print_usage 34 exit 1; 35 else 36 if [[ ${app} != "" ]]; then 37 echo "ERROR: app already defined ${app}" 38 exit 1; 39 else 40 app=${arg} 41 fi 42 fi 43done 44 45if [[ ${app} == "" ]]; then 46 echo "Defaulting to installing SampleApp." 47 app="SampleApp" 48fi 49 50 51if [[ "$forceRemoval" == "true" ]]; 52then 53 echo "Forcing removal of previously installed packages" 54 $ADB ${DEVICE_SERIAL} uninstall com.skia > /dev/null 55fi 56 57if [[ "$BUILDTYPE" == "Release" ]]; 58then 59 apk_suffix="release.apk" 60else 61 apk_suffix="debug.apk" 62fi 63 64if [[ ${app} == 'SampleApp' ]]; then 65 app="sample_app" 66fi 67 68APP_LC=$(echo $app | tr "[:upper:]" "[:lower:]") 69 70echo "Installing ${APP_LC} from ${APP_LC}/build/outputs/apk/${APP_LC}-${ANDROID_ARCH}-${apk_suffix}" 71$ADB ${DEVICE_SERIAL} install -r ${SCRIPT_DIR}/../apps/${APP_LC}/build/outputs/apk/${APP_LC}-${ANDROID_ARCH}-${apk_suffix} 72 73