• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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