Convert the existing MathBlitz web application into a production-grade Android APK for distribution on the Google Play Store.
- Package HTML/JS/CSS into a native container.
- Implement Android-specific configurations (Package Name:
com.mathblitz.game). - Configure app metadata (Name, Version 1.0.0).
- Generate a debug APK (and provide steps for release signing).
- Performance: High frame rate for animations.
- Reliability: Graceful handling of offline states.
- Maintainability: Standardized directory structure.
- Layer 1 (UI/UX): Existing web assets.
- Layer 2 (Bridge): Capacitor 6.
- Layer 3 (Native): Android Gradle project.
- Capacitor: Chosen for its "Web-First" approach.
- NPM: For dependency management.
- Java 17: For Android Gradle builds.
MathBlitz/
├── www/ # Web assets for Capacitor
├── android/ # Native Android project
├── package.json # NPM config
└── capacitor.config.ts
- Orientation: Locked to Portrait.
- Status Bar: Hidden or themed to #ffe44d.
- Splash Screen: Based on the game's logo (yellow theme).
- Infra:
npm init, install Capacitor. - Setup: Configure
capacitor.config.tsand setwebDirtowww. - Migrate: Move
index.html,app.js, etc., towww/. - Android:
npx cap add android. - Polishing: Add icons and splash screen.
- Build: Run Gradle wrapper to assemble APK.