Initial release: Claude Pro usage widget for Android
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
#!/bin/bash
|
||||
# Build + install on emulator or connected device
|
||||
# Usage:
|
||||
# ./deploy.sh → emulator
|
||||
# ./deploy.sh wifi → phone via ADB WiFi (prompts for IP if not set)
|
||||
# ./deploy.sh logs → stream logs only
|
||||
set -e
|
||||
|
||||
export ANDROID_HOME=~/android-sdk
|
||||
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$PATH"
|
||||
GRADLE=~/gradle/gradle-8.6/bin/gradle
|
||||
APK=app/build/outputs/apk/debug/app-debug.apk
|
||||
PKG=me.khodak.claudeusage
|
||||
|
||||
# -- connect to phone over WiFi if requested
|
||||
if [[ "$1" == "wifi" ]]; then
|
||||
PHONE_IP="${PHONE_IP:-$(cat .phone-ip 2>/dev/null)}"
|
||||
if [[ -z "$PHONE_IP" ]]; then
|
||||
read -rp "Phone IP address: " PHONE_IP
|
||||
echo "$PHONE_IP" > .phone-ip
|
||||
fi
|
||||
adb connect "$PHONE_IP:5555" 2>&1 | head -3
|
||||
fi
|
||||
|
||||
# -- logs only
|
||||
if [[ "$1" == "logs" ]]; then
|
||||
echo "Streaming logs (Ctrl-C to stop)..."
|
||||
adb logcat -s UsageRepo:D ClaudeWidget:D UsageWorker:D AlarmReceiver:D | sed 's/.*\(D\|W\|E\) //'
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# -- build
|
||||
echo "Building..."
|
||||
$GRADLE assembleDebug --no-daemon -q
|
||||
echo "Build OK"
|
||||
|
||||
# -- pick target device
|
||||
DEVICES=$(adb devices | awk '/device$/{print $1}')
|
||||
if [[ -z "$DEVICES" ]]; then
|
||||
echo "No device/emulator connected. Start emulator with ./start-emulator.sh or enable WiFi debugging."
|
||||
exit 1
|
||||
fi
|
||||
echo "Devices: $DEVICES"
|
||||
|
||||
# -- install (keep data = upgrade)
|
||||
echo "Installing..."
|
||||
adb install -r "$APK"
|
||||
echo "Installed."
|
||||
|
||||
# -- launch main activity
|
||||
adb shell am start -n "$PKG/.MainActivity" 2>/dev/null || true
|
||||
|
||||
# -- stream relevant logs
|
||||
echo ""
|
||||
echo "Streaming logs (Ctrl-C to stop)..."
|
||||
adb logcat -c && adb logcat -s UsageRepo:D MainActivity:D | sed 's/.*[VDIWEF]\///'
|
||||
Reference in New Issue
Block a user