#!/usr/bin/env bash # Usage: provision-shield.sh (bash port of configure-shield.ps1, trusted-LAN http) set -euo pipefail D="$1:5555"; URL="$2"; PKG=com.dayline.tv; APK=/home/glyptic/hobbs-shield/Hobbs-Family-Organizer-Local-v1.4.apk adb connect "$D" >/dev/null; [ "$(adb -s "$D" get-state)" = device ] echo "before: $(adb -s "$D" shell dumpsys package $PKG | grep -m1 versionName)" adb -s "$D" shell run-as $PKG ls files adb -s "$D" install -r "$APK" echo "after: $(adb -s "$D" shell dumpsys package $PKG | grep -m1 versionName)" put() { printf '%s' "$2" | adb -s "$D" shell "run-as $PKG sh -c 'umask 077; cat > files/.$1.new && chmod 600 files/.$1.new && mv files/.$1.new files/$1'"; } put base_url "$URL" adb -s "$D" shell "run-as $PKG rm -f files/access_token" put allow_insecure_http enabled adb -s "$D" shell run-as $PKG ls -l files FG=$(adb -s "$D" shell dumpsys activity activities | grep -m1 mResumedActivity); echo "foreground: $FG"; echo "$FG" | grep -q -E "com.dayline.tv|launcher|tvlauncher|projengmenu" || { echo SKIP-LAUNCH: TV in use; exit 0; } adb -s "$D" shell am force-stop $PKG adb -s "$D" shell am start -W -n $PKG/.MainActivity | grep -E 'Status|Activity'