Cross Platform Android Configuration
Configure your Flutter or React Native app for Android
Step 1: Publish Digital Asset Links file
To enable support for passkeys for the Android version of your mobile app, Google requires that you associate your app with a website that your app owns by publishing a Digital Asset Links file. Instructions can be found in "Step 1" or our Android SDK docs:
Publish Digital Asset Links file
If your Passage App is using Hosted Login, we handle this step for you.
Step 2: Register your Android app with Passage
For passkeys to work in any Android app, Google requires the app's "APK key hash" to be set as the relying party's auth origin. Instructions on how to get and add this key hash for your Passage app can be found in "Step 2" of our Android SDK docs:
Register Android app with Passage
Step 3: Add Passage auth origin to your Android app
In "Native Apps" in Passage Console, you can get your app's associated domain. Use this value (minus the "https://") instead of YOUR_AUTH_ORIGIN
in the next step below.
Your app's strings.xml
file can be found at:
<app root directory>/android/app/src/main/res/values/strings.xml
Finally, paste the following meta-data
into your app’s AndroidManifest.xml
:
Your app's AndroidManifext.xml
file can be found at:
<app root directory>/android/app/src/main/AndroidManifest.xml
Step 4: App Linking (Required for Magic Link and Hosted Login)
If your app uses Magic Links or Hosted Login, you’ll likely want to setup your app with App Linking. This will direct users that click on an App Link in their email or messaging app on their Android device to your app, rather than to a browser.
In your app’s AndroidManifest.xml
file, add this intent filter to your <activity>
to enable App Linking:
If you're using Hosted Login, you can find the value for android:pathPrefix
in the Native Apps section of the console.
Last updated