Android Local Build Debug
Use this skill for repeatable local Android build + install + real-device debugging.
Run commands from repository root:
E:\coding\TermLink
Target Devices
Use this priority by default:
da34332cMQS7N19402011743
If multiple devices are online, always pass -Serial.
Default Debug Configuration
The file android/local-debug-config.json contains default server profile for debug builds:
- Base URL:
http://192.168.50.12:3010 - Terminal Type:
TERMLINK_WS - Auth Type:
BASIC - Username:
admin - Password:
admin
This file is gitignored and will be copied to APK assets during build.
Quick Start
- Build debug APK:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/build-debug-apk.ps1
- Install and launch:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/install-debug-apk.ps1
- Stream logs:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/logcat-termlink.ps1
- Validate local server config:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/validate-server-config.ps1
Standard Debug Loop
- Run doctor:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/adb-doctor.ps1
- Rebuild and reinstall:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/build-debug-apk.ps1
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/install-debug-apk.ps1 -Serial da34332c
- Launch app:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/launch-termlink.ps1 -Serial da34332c
- Reproduce issue and collect logs:
powershell -ExecutionPolicy Bypass -File ./skills/android-local-build-debug/scripts/logcat-termlink.ps1 -Serial da34332c
Rules
- Always use
adb -s <serial>in scripts and manual commands. - Keep package fixed to
com.termlink.app. - Prefer PID-filtered logcat; fall back to tag filter if PID is unavailable.
- Use JDK 21 for Android build.
- Store private validation URL in
local-config.ps1(gitignored).