Prerequisites
- Android Gradle Plugin and Kotlin versions supported by your Flutter template
minSdk26 andcompileSdk34 (required for AIR Kit)
Asset statements (Digital Asset Links)
Create or editandroid/app/src/main/res/values/strings.xml:
AndroidManifest.xml inside <application>:
App signing and allowlisting
Provide your app’s SHA-256 signing certificate fingerprint and package name to Moca for allowlisting (debug and release may differ). Usekeytool:
minSdk and compileSdk
In your app-level Gradle file (Kotlin DSL or Groovy), set at least:
Network security config
Optional: addandroid/app/src/main/res/xml/network_security_config.xml for TLS and (if needed) local dev domains:
<application> to it:
Permissions
Typical requirements:ProGuard / R8
If you minify release builds, add keep rules for AIR Kit, WebView, and crypto dependencies. Verify package names against your resolved dependencies afterflutter pub get:
Verify the build
Troubleshooting
| Issue | What to check |
|---|---|
| Passkey / domain errors | Asset statements JSON, signing cert vs allowlist, meta-data wiring |
| WebView blank / SSL | networkSecurityConfig, INTERNET permission |
| Gradle conflicts | flutter clean, ./gradlew clean under android/ |
Next steps
- iOS setup
- Google Sign-In (optional)
- SDK initialization