31 lines
893 B
Bash
Executable File
31 lines
893 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# builds and installs the apk to the saved or specified device serial.
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
source "$SCRIPT_DIR/_env.sh"
|
|
|
|
REPO_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
|
|
GRADLE_TYPE="${1:-release}"
|
|
"$SCRIPT_DIR/build.sh" "$GRADLE_TYPE"
|
|
|
|
if [[ -z "${ANDROID_TARGET:-}" ]]; then
|
|
echo "no device selected. run cargo xtask select-android first." >&2
|
|
exit 2
|
|
fi
|
|
|
|
case "$GRADLE_TYPE" in
|
|
debug) APK_VARIANT_DIR="debug" ;;
|
|
release) APK_VARIANT_DIR="release" ;;
|
|
release-debug) APK_VARIANT_DIR="releaseDebug" ;;
|
|
esac
|
|
APK="$(find "$REPO_ROOT/android/app/build/outputs/apk/$APK_VARIANT_DIR" -name '*.apk' | head -1)"
|
|
if [[ -z "$APK" ]]; then
|
|
echo "no apk built at $APK_VARIANT_DIR." >&2; exit 1
|
|
fi
|
|
|
|
echo "→ adb -s $ANDROID_TARGET install -r $APK"
|
|
adb -s "$ANDROID_TARGET" install -r "$APK"
|