aboutsummaryrefslogtreecommitdiffhomepage
path: root/platform_tools/android/bin/android_install_app
blob: f61987d4abd3f33da5523cc0def67ea357ca72c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/bin/bash
#
# android_install_app: installs the skia sampleApp on the device.

function print_usage {
  echo "USAGE: android_install_app [options]"
  echo " Options:         -f  Forces the package to be installed by removing any"
  echo "                      previously installed packages"
  echo "                  -h  Prints this help message"
  echo "            --release Install the release build of Skia"
  echo "      -s [device_s/n] Serial number of the device to be used"
  echo "              AppName Can be either sample_app or VisualBench"
}

SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"

source $SCRIPT_DIR/android_setup.sh
source $SCRIPT_DIR/utils/setup_adb.sh

forceRemoval="false"
app=""

for arg in ${APP_ARGS[@]}; do
  if [[ "${arg}" == "-f" ]]; then
    forceRemoval="true"
  elif [[ "${arg}" == "-h" ]]; then
    print_usage
    exit
  elif [[ "${arg}" == "-r" ]]; then
    echo "DEPRECATED: -r is now a no-op"
  elif [[ ${arg} == '-'* ]]; then
    echo "ERROR: unrecognized option ${arg}"
    print_usage
    exit 1;
  else
    if [[ ${app} != "" ]]; then
      echo "ERROR: app already defined ${app}"
      exit 1;
    else
      app=${arg}
    fi
  fi
done

if [[ ${app} == "" ]]; then
  echo "defaulting to installing sample_app."
  app="sample_app"
fi


if [[ "$forceRemoval" == "true" ]];
then
    echo "Forcing removal of previously installed packages"
    $ADB ${DEVICE_SERIAL} uninstall com.skia > /dev/null
fi

BUILD_TYPE_LC=$(echo $BUILDTYPE | tr "[:upper:]" "[:lower:]")
APP_LC=$(echo $app | tr "[:upper:]" "[:lower:]")

echo "Installing ${APP_LC} from ${APP_LC}/build/outputs/apk/${APP_LC}-${ANDROID_ARCH}-${BUILD_TYPE_LC}.apk"
$ADB ${DEVICE_SERIAL} install -r ${SCRIPT_DIR}/../apps/${APP_LC}/build/outputs/apk/${APP_LC}-${ANDROID_ARCH}-${BUILD_TYPE_LC}.apk