airi/apps/stage-pocket/android
2026-05-08 20:48:55 +08:00
..
app fix(stage-pocket,stage-server): correct Android deep link scheme (#1794) 2026-05-08 20:48:55 +08:00
gradle/wrapper feat(stage-pocket): add Android target (#1326) 2026-03-15 21:46:23 +08:00
.gitignore feat(stage-pocket): add Android target (#1326) 2026-03-15 21:46:23 +08:00
app-version.properties release: v0.10.2 2026-05-07 19:36:33 +08:00
build.gradle.kts chore(stage-pocket): update AGP 2026-03-31 17:31:08 +08:00
capacitor.settings.gradle feat(stage-pocket,stage-server): support Android deep link for official server login (#1786) 2026-05-08 18:38:03 +08:00
gradle.properties feat(stage-pocket): add Android target (#1326) 2026-03-15 21:46:23 +08:00
gradlew feat(stage-pocket): add Android target (#1326) 2026-03-15 21:46:23 +08:00
gradlew.bat feat(stage-pocket): add Android target (#1326) 2026-03-15 21:46:23 +08:00
README.md feat(cap-vite): use platform-specific device id (#1458) 2026-03-23 21:23:15 +08:00
settings.gradle.kts chore(stage-pocket): update AGP 2026-03-31 17:31:08 +08:00
variables.gradle.kts feat(stage-pocket): scan qr code to connect to tamagotchi 2026-04-07 19:04:59 +08:00

stage-pocket — Android

AIRI mobile app for Android, built with Capacitor.

  • Min SDK: 24 (Android 7.0)
  • Target SDK: 36 (Android 16)

Prerequisites

  • Node.js 18+
  • Android Studio (includes JDK and Android SDK)
  • Android SDK Platform 36 (install via Android Studio → SDK Manager)
  • Android SDK Build-Tools (install via Android Studio → SDK Manager)

Set the following environment variables:

ANDROID_HOME=C:/Users/<you>/AppData/Local/Android/Sdk
JAVA_HOME=C:/Program Files/Android/Android Studio/jbr

Gradle requires Java 21. The JBR bundled with Android Studio works. Without JAVA_HOME set, Gradle may fall back to an older system Java and fail with invalid source release: 21.

Development

First-time setup

Install dependencies from the repo root:

pnpm install

Run on a device / emulator

Open the project in Android Studio:

pnpm dev:android -- target <CAPACITOR_DEVICE_ID>
# Or
CAPACITOR_DEVICE_ID_ANDROID=<CAPACITOR_DEVICE_ID> pnpm dev:android

Updating app icons and splash screens

Source assets live in ../resources/:

File Purpose
icon-only.png App icon, 1024×1024, no background
icon-foreground.png Adaptive icon foreground layer, 1024×1024
splash.png Splash screen, 2732×2732

The icon background color is white (#FFFFFF), defined in app/src/main/res/values/ic_launcher_background.xml.

To regenerate all Android icon and splash sizes after updating the source assets:

# from apps/stage-pocket/
npx @capacitor/assets@3.0.5 generate --android \
  --iconBackgroundColor "#FFFFFF" \
  --iconBackgroundColorDark "#000000" \
  --splashBackgroundColor "#FFFFFF" \
  --splashBackgroundColorDark "#000000"

This overwrites all files under app/src/main/res/mipmap-*/ and app/src/main/res/drawable-*/.

After running, verify that mipmap-anydpi-v26/ic_launcher.xml and ic_launcher_round.xml still reference @color/ic_launcher_background (not @mipmap/ic_launcher_background). The tool sometimes writes an incorrect reference — restore with git checkout if needed.

Notes

  • app/src/main/assets/public/ and app/src/main/assets/capacitor.config.json are generated by cap sync and gitignored.
  • local.properties (SDK path) is machine-specific and gitignored.
  • org.gradle.java.home should not be added to gradle.properties — remove it if Android Studio adds it automatically.