Files
loto-android/.github/workflows/build-debug.yml
T
tiennm99 dab4f7e48c feat: migrate to Capacitor wrapper for fully-offline Android
Replace the native Kotlin/Compose port with a Capacitor 8 wrapper around
the upstream loto SvelteKit PWA. Loto is consumed as a git submodule and
its static build is bundled into the APK at sync time. The wrapper has
no INTERNET permission, so fully offline is enforced rather than
conventional.

- loto/ submodule pinned to dfb1c1e
- android/ scaffolded by cap add android; signing wired via env vars
- All 184 voice MP3s + service worker bundled in assets/public/
- CI checkouts submodule, runs npm build, then Gradle inside android/
- Native port preserved in git history at fe52232 and 9a35686
2026-05-10 02:03:16 +07:00

47 lines
965 B
YAML

name: build-debug
on:
pull_request:
push:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Set up Node 20
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '17'
- name: Set up Gradle
uses: gradle/actions/setup-gradle@v3
- name: Install wrapper deps
run: npm ci
- name: Build loto + sync into Android
run: npm run build
- name: Assemble debug APK
working-directory: android
run: ./gradlew :app:assembleDebug
- name: Upload debug APK
uses: actions/upload-artifact@v4
with:
name: debug-apk
path: android/app/build/outputs/apk/debug/*.apk
retention-days: 7