feat(android): add tasks for Android project initialization, preparation, and building APKs

This commit is contained in:
2026-01-01 21:09:03 -06:00
parent 2830198c43
commit c3a000aa99

View File

@@ -124,6 +124,7 @@ tasks:
- rm -rf dist
- rm -rf python-dist
- rm -rf meshchatx/public
- task: android-clean
sync-version:
desc: Sync version numbers across project files
@@ -164,3 +165,48 @@ tasks:
desc: Run Frontend-only Demo Docker container
cmds:
- 'MESHCHAT_DEMO_IMAGE="reticulum-meshchatx-demo:local" {{.DOCKER_COMPOSE_CMD}} -f docker-compose.demo.yml up --remove-orphans'
android-init:
desc: Initialize Gradle wrapper for Android project
cmds:
- |
if [ ! -f android/gradle/wrapper/gradle-wrapper.jar ]; then
echo "Downloading Gradle wrapper jar..."
mkdir -p android/gradle/wrapper
curl -L -o android/gradle/wrapper/gradle-wrapper.jar \
https://raw.githubusercontent.com/gradle/gradle/v8.12.1/gradle/wrapper/gradle-wrapper.jar || \
echo "Failed to download. Please run: cd android && gradle wrapper --gradle-version 8.12.1"
else
echo "Gradle wrapper already initialized."
fi
android-prepare:
desc: Prepare Android build (copy meshchatx package and assets)
deps: [build, android-init]
cmds:
- |
echo "Copying meshchatx package to Android project..."
mkdir -p android/app/src/main/python
cp -r meshchatx android/app/src/main/python/
- |
echo "Android build prepared. Don't forget to:"
echo "1. Add Chaquopy license to android/local.properties"
echo "2. Open android/ in Android Studio or run: task android-build"
android-build:
desc: Build Android APK (requires Android SDK and Chaquopy license)
deps: [android-prepare]
cmds:
- cd android && ./gradlew assembleDebug
android-build-release:
desc: Build Android APK (release, requires signing config)
deps: [android-prepare]
cmds:
- cd android && ./gradlew assembleRelease
android-clean:
desc: Clean Android build artifacts
cmds:
- cd android && ./gradlew clean
- rm -rf android/app/src/main/python/meshchatx