I use dynamic links in my Flutter app. My dynamic links won't open on Android 13, on all other api levels and on iOS the links work --> lead back into the app to the specified screen.
I already checked the Android Manifest and made sure that the intent-filter
is correctly set.
So did anyone experience the same issue and did solve it? Is it necessary to verify Dynamic Links as Android App Links?
I found the issue. A Firebase Dynamic Link is a wrapper for an actual link.
Here's how it is build in my Flutter Web project:
service.generateDynamicLink(
key: Keys.firebaseApi,
dynamicLinkInfoWrapper: DynamicLinkInfoWrapper(
dynamicLinkInfo: DynamicLinkInfo(
domainUriPrefix: 'company.page.link',
link: 'https://company.de',
androidInfo: AndroidInfo(androidPackageName: 'de.company.app'),
iosInfo: IosInfo(iosBundleId:'de.company.app'),
),
),
)
On API levels below 33 it was perfectly fine to declare the intent-filter
for the domainUriPrefix
like this:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="https"/>
<data android:host="company.page.link"/>
</intent-filter>
so to declare the Dynamic Link itself.
But in API 33 upwards it is also necessary now to declare what's inside the Dynamic Link, the link
which looks like this:
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="https"/>
<data android:host="company.de"/>
</intent-filter>