v1.0.4 — Dynamic Model Fetching & Catalog Updates
Current release. Sideload the APK for direct install, or use the AAB for Play Store distribution.
Highlights since v1.0.3 (PR #46 by @JMAN730)
🤖 Dynamic Model Fetching & Catalog Updates
- Runtime Model Lists: Every remote LLM provider (Gemini, OpenAI, Cohere, Groq, OpenRouter, etc.) now dynamically fetches its available model list directly from its respective
/modelsendpoint rather than shipping hardcoded fallback lists. - Capability-Based Chat Model Filtering: Chat models are identified dynamically by capability markers (e.g.
generateContentsupport for Gemini, declared chat endpoints for Cohere, non-chat denylist for OpenAI-compatible providers) ensuring newly released models appear in the picker without requiring an app update. - De-staled Seed Models: Updated seed models across provider catalogs (Gemini
gemini-2.5-flash, Groqllama-3.3-70b-versatile, OpenRouteropenrouter/auto). - Improved Model Fetch Error Reporting: Failed model lookups report explicit states (
Success/NeedsCredentials/Failed) in Settings instead of swallowing errors and caching stale defaults. - Standalone Parser Architecture: Extracted parsing into
ModelListParserswith unit tests verifying parser stability across provider schemas.
⚡ LiteRT & On-Device Improvements
- SDK Gate Cleanup: Removed redundant
SDK_INTruntime checks inLiteRTLMProvider.isAvailableasminSdk 26guarantees API availability. - LiteRT Tests: Added tests for custom LiteRT model registry helpers and the default Qwen model configuration.
📱 About Screen Fixes
- Dynamic Version Display: Updated the About screen to read
BuildConfig.VERSION_NAMEdynamically rather than using a hardcoded string. - Icon Badge Scaling: Replaced text placeholder with properly scaled
bot.pngapp icon badge (requiredSize).
🛠️ Toolchain & Build Hardening
- Gradle 9.7.0: Upgraded Gradle wrapper to 9.7.0 and updated SHA-256 wrapper verification checksum.
- Version Bump: Updated app version to
1.0.4(versionCode 5).
Release Assets
app-release.apk— Release APK (sideload for testing).app-debug.apk— Debug build APK for developer testing & logging.app-release.aab— Release Android App Bundle.app-debug.aab— Debug Android App Bundle.
Checksums (SHA-256)
app-release.apk:d6e9487a710051815283e069c25f402995e8e38324f17b13e446de5b64822baaapp-debug.apk:ca604bc036b8392bb00bdd9c6f2d912827adf554d2ffc4b34e7ca9fff7728bf4app-release.aab:7333239b7e9c009bab5ecca5afd6148fd6b22f39a17faa4fd1bebd27a4d45a68app-debug.aab:6016bf6b5c3dd9b32a189948a510dd7f1e5b57c5e5a416d4f48e36d02c7f71a7
Build Configuration
- Package:
com.opendroid.aiagent - Version Code: 5
- Version Name: 1.0.4
- Min SDK: 26 (Android 8.0)
- Target SDK: 36 (Android 16)
Install notes for testers
- Download
app-release.apkorapp-debug.apkfrom the GitHub release. - Enable install from unknown sources for your browser/file manager.
- Sideload the APK; uninstall any prior build with a different signing key if Android blocks the update.
- Report issues against tag
v1.0.4.