Monday, 14 February 2022

How to verify android app links on android 12 and higher?

Problem is opening application over link in android 12 or higher.

Everything works fine on lower versions of android.

When I look at my “App Info” -> “Open by default” screen. I see unapproved links.

When I turn on that link as approved inside supported web addresses, opening app via link works.

enter image description here

I have read about verifying intent filter inside android documentation and everything looks fine to me.

https://developer.android.com/training/app-links/verify-site-associations#add-intent-filters

Have aded .well-known/assetlinks.json to my domain https://my.domain.net/.well-known/assetlinks.json content of .well-known/assetlinks.json (generated and checked with https://developers.google.com/digital-asset-links/tools/generator)

[{
  "relation": ["delegate_permission/common.handle_all_urls"],
  "target" : { "namespace": "android_app", "package_name": "my.package.name",
               "sha256_cert_fingerprints": ["SHA_256"] }
}]

Triple checked that I am using correct SHA_256.

Also tested if .json is okay with “Statement List Generator and Tester”, link mentioned above.

Intent filter inside AndroidManifest.xml

<intent-filter
   android:autoVerify="true"
   android:label="@string/login_to_app">
  
   <action android:name="android.intent.action.VIEW" />

   <category android:name="android.intent.category.DEFAULT" />
   <category android:name="android.intent.category.BROWSABLE" />

   <data
      android:host="my.domain.net"
      android:pathPrefix="/${dynamicVar}/our/application/"
      android:scheme="https" />
 </intent-filter>

Also I uploaded application to play store just to make sure this is not problem with SHA certificates or play store related, but no difference there.

Also I checked my app package name and it is correct for both internal testing and debugging.

I have also gone the way of adding every combination of app package names just to make sure.

Shortly: Opening application via link on android 12 and higher does not work due to unsupported web addresses.

I am aware that links need to be verified with .well-known/assetlinks.json When I manually check supported web addresses it works perfectly but that is not the end solution.

I cannot figure out what am I missing out here.

Anyone have an idea what could I be doing wrong here?



from How to verify android app links on android 12 and higher?

No comments:

Post a Comment