Last updated: 2026-05-10
compileSdk = 35targetSdk = 35versionCode = 12versionName = "0.4.0-beta.3"- Release minify and shrink are enabled
- Release minification runs without the previous Kotlin metadata warning after upgrading AGP/R8 to 8.13.2
- Release Android App Bundle builds successfully
- Release signing is wired through local
keystore.properties - GitHub Actions publishes a debug APK on normal pushes
- Successful pushes to
mainupdate a rollinglatest-mainprerelease with the current debug APK - GitHub Actions publishes an unsigned release AAB for
v*tags - Alpha tags like
v0.1.0-alpha.2now draft a GitHub prerelease with attached build artifacts - GitHub Releases can also be created manually with a locally signed APK for testers outside the Play Store
- Settings now expose an optional heavy analysis mode for staged image/audio extraction
v0.3.0-alpha.0is the pre-UI-revamp minor checkpoint releasev0.3.0-alpha.1includes the editable-event flow, calendar upsert sync, R8 stabilization, and Gemma compact profile- Event details can now be edited before system-calendar sync
- Re-syncing an edited event updates the stored Android Calendar event instead of creating a duplicate
- Gemma 4 E2B Compact is available as a conservative CPU-only text/image profile for constrained-device testing
Current output after ./gradlew bundleRelease:
app/build/outputs/bundle/release/app-release.aab
The project can now produce a release bundle artifact suitable for the next distribution steps.
Gradle now reads release signing values from a local keystore.properties file when it exists.
In CI, release bundles are intentionally built without the local keystore so signing secrets do not need to be stored on GitHub.
Expected keys:
storeFilestorePasswordkeyAliaskeyPassword
Use keystore.properties.example as the template.
For GitHub APK distribution, build and publish locally so the signing key never leaves the development machine. See GitHub Release Process and Install From GitHub.
- Back up the release keystore safely. Losing it means losing the signing identity for future updates unless you rotate through Play processes.
- Prepare Play Console assets and declarations:
- privacy policy
- data safety form
- screenshots and listing copy
- Build and verify:
./gradlew clean test./gradlew bundleRelease
- For tester distribution:
- use the GitHub Actions debug APK artifact on normal commits
- use alpha tags to draft a prerelease with attached APK and unsigned AAB
- Local multimodal inference can still be slow and may still be device-sensitive on large jobs.
- Event list UX remains basic.
- Event editing uses text-entry date/time fields and still needs picker polish.
- Gemma 4 E2B Compact still needs Pixel 9a-class device validation and does not support audio.