Universal links: Open in "MyApp" doesn't launch my app

I've a strange problem which is only occurring on 2 client devices. We have enabled Universal links, and have it fully tested and working. On one client device, the link never opens our app; but here's the strange thing: If I long-press on our link (in Messages), it gives a preview (as expected), and the context menu offers "Open in <myapp>", as well as "Open in Safari". Tapping on "Open in <myapp>" does nothing. I've tried the following:

  1. Checked I could access the site-association file over https with no redirects
  2. Enabled developer mode and used universal link debug feature: pasted the same link - Developer mode says it will open the app.
  3. I've carried out the sysdiagnose; And there are entries in there for our app in swcutil_show.txt. Snipped below:
Service:              applinks
App ID:               <my fully qualified app bundle id>
App Version:          760.0
App PI:               <LSPersistentIdentifier 0x6b8008930> { v = 0, t = 0x8, u = 0x45c, db = DC8D18A2-430D-4AD4-A5BE-B7A003CF9A6F, {length = 8, bytes = 0x5c04000000000000} }
Domain:               www.<mydomain>.com
Patterns:             {"/":"/cc/*"}, {"?":{"t":"*"},"/":"/md/"}
User Approval:        unspecified
Site/Fmwk Approval:   approved
Flags:                
Last Checked:         2025-04-29 09:10:21 +0000
Next Check:           2025-05-04 08:42:50 +0000
--------------------------------------------------------------------------------
Service:              applinks
App ID:               <my fully qualified app bundle id>
App Version:          760.0
App PI:               <LSPersistentIdentifier 0x6b8008930> { v = 0, t = 0x8, u = 0x45c, db = DC8D18A2-430D-4AD4-A5BE-B7A003CF9A6F, {length = 8, bytes = 0x5c04000000000000} }
Domain:               <mydomain>.com
Patterns:             {"/":"/cc/*"}, {"?":{"t":"*"},"/":"/md/"}
User Approval:        unspecified
Site/Fmwk Approval:   approved
Flags:                
Last Checked:         2025-04-29 09:10:21 +0000
Next Check:           2025-05-04 08:42:50 +0000
--------------------------------------------------------------------------------
Service:              applinks
App ID:               <my fully qualified app bundle id>
App Version:          760.0
App PI:               <LSPersistentIdentifier 0x6b8008930> { v = 0, t = 0x8, u = 0x45c, db = DC8D18A2-430D-4AD4-A5BE-B7A003CF9A6F, {length = 8, bytes = 0x5c04000000000000} }
Domain:               *.<mydomain>.com
Patterns:             {"/":"/cc/*"}, {"?":{"t":"*"},"/":"/md/"}
User Approval:        unspecified
Site/Fmwk Approval:   approved
Flags:                
Last Checked:         2025-04-29 09:10:21 +0000
Next Check:           2025-05-04 08:42:50 +0000
--------------------------------------------------------------------------------

The version numbers match the installed version of my app I've tried running logging and just capturing logs before and after I press the "open in <myapp>", but there's nothing suspicious in there.

And the kicker - it's only happening on a single device. No other devices are experiencing this.

An interesting update. I just noticed that the bottom of my swcutil text output from sysdiagnose has a SINGLE entry in the SETTINGS section, and it looks like it is explicitly not allowing my app to launch. It says:

=================================== SETTINGS ===================================
{ s = applinks, a =<my fully qualified app bundle id>, d = (null) }: {
    "com.apple.LaunchServices.enabled" = 0;
}

This is in contrast to a device where it is working correctly. On that device is have MANY entries in the SETTINGS section, including:

--------------------------------------------------------------------------------
{ s = applinks, a = <my fully qualified app bundle id>, d = (null) }: {
    "com.apple.LaunchServices.enabled" = 1;
}

So, I guess the question now is - how is this flag set - is this something done by user behaviour, or some other side effect? One for the DTS engineers I think!

Thanks for the post, it seems like you send us a code-level request as well.

Looks like the user or a policy temporarily disable Universal Links for the specific bundle id. Do you want to continue in the Forums or on the code-level request you have submitted?

Albert Pascual
  Worldwide Developer Relations.

I too am seeing this behavior for some of my own users who are running into issues with universal links not working. I was able to grab a system diagogstic and I see `com.apple.LaunchServices.enabled" = 0; for our apps bundle id. What preferences can cause these services to be enabled/disabled for a particular app?

Thank you for your post! Here's a guide on how users can manage Universal Links for your app using Open Notes.

Steps for Users to Modify Universal Link Settings

  1. Add the URL Managed by AASA:

    • In Open Notes, include the URL that's associated with your app's AASA file.
  2. Select an Option:

    • Tap and hold the link to see two options:
      • Open in [App Name]
      • Open in Safari
  3. Disabling Universal Links:

    • If "Open in Safari" is selected, Universal Links will be disabled. This action sets the flag to 0, directing future link attempts to Safari.
    { s = applinks, a =<your-fully-qualified-app-bundle-id>, d = (null) }: {
        "com.apple.LaunchServices.enabled" = 0;
    }
    
  4. Re-enabling Universal Links:

    • To re-enable your app to manage links registered in the AASA file, users should:
      • Open Notes.
      • Tap and hold the link.
      • Choose Open in [App Name].

    This restores the settings flag to its default value of 1, allowing your app to handle the links automatically.

    { s = applinks, a = <your-fully-qualified-app-bundle-id>, d = (null) }: {
        "com.apple.LaunchServices.enabled" = 1;
    }
    

By following these steps, users can easily toggle Universal Links for your app according to their preferences.

Albert Pascual
  Worldwide Developer Relations.

I'm aware of the tap and hold - however, in my case choosing "Open in [App Name]" does nothing. My app doesn't get launched, and there is nothing in the log to suggest that there was any failure; My app isn't launched and immediately crashing ; the menu item appears to do nothing.

@Derm_Tapadoo If the menu items do nothing, is the AASA file correct? Can you send me a link to your hosted AASA file? App link to the store, so I can install and test that?

Albert Pascual
  Worldwide Developer Relations.

What causes "com.apple.LaunchServices.enabled" to be disabled for an app's bundle id - besides the manual steps above for "Users to Modify Universal Link Settings"?

We are struggling to identify what could be causing launch services to be disabled for our app for a subset of users (not all users).

Does Apple Intelligence write these preferences? This user is on a device with it enabled, and has many apps listed with either enabled = 1 or enabled = 0 when I compare that to a sysdiagnose from a device which doesn't support Apple Intelligence there aren't any apps listed under that "settings" section.

Universal links: Open in "MyApp" doesn't launch my app
 
 
Q