I have configured AASA file to support path such as https://domain/forgot-password?token=asadsad3ddsd. It is not opening in browser nor app. I have tried different iterations to support the above url.
iteration 1 : components : [ { "/" : "/forgot-password" , "?" : { "token" : "?*} ]
iteration 2 : components : [ { "/" : "*" } ]
iteration 3 : components : [ { "/" : "/forgot-password" , "?" : { "token" : "?????..." } ]
my token is of length 36. so I have kept 36 question marks.
do we need to configure something in flutter app delegate to support query parameters.
Universal Links
RSS for tagAllow your users to intelligently follow links to content in your app or to your website using universal links.
Posts under Universal Links tag
92 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
I've setup applinks for Universal Links purposes on my app. But I noticed that setting up applinks also sets up Password AutoFill. Upon logging in I don't want my users to be prompted to Save Password because of the way we use our subdomains. How can I disable Password AutoFill while retaining Universal Links capability, and without disabling secureTextEntry on my UITextField?
Hello, my app was rejected because deep linking doesn't work as expected according to the reviewer.
I have reinstalled the app and tested it on the same device and iOS version as the reviewer, but everything still works fine for me. I also asked a few friends (three people) to test it, and they all confirmed that the deep linking works as intended. Have you ever experienced a similar issue before, or do you have any insight into why this might be happening?
Thank you in advance.
THE ISSUE -
Hi there guys we have been through documentation and gone back and forth on forums and we can not get universal links / Deep link to work for us.
OUR SETUP - We are running Flutter and are looking to post images from the Gallery into the app only issue is it does not pick up the page its meant to open once the share button is clicked.
We have tired all the steps meticulously and still can not get it to work.
Are they any known issues with this ?
Hi,
Can a single domain serve a /.well-known/apple-app-site-association file for multiple apps from different developers?
We currently have our own domain, let's say example.com,
which serves https://example.com/.well-known/apple-app-site-association
which lists our app, let's say "ABCDEFG.com.example.AppA" for path "/app/a".
We're talking with another developer who has another app on the store.
Can we add their app, "MNOPQR.com.different.AppB" on our site, https://example.com/.well-known/apple-app-site-association, add their app ID for path "/app/b",
ask them to add our example.com domain in their associated-domains entitlement,
and would it work?
I mean would https://example.com/app/a open our app "ABCDEFG.com.example.AppA" and https://example.com/app/b open their app "MNOPQR.com.different.AppB" ?
We want to open https://example.com/redirect/app redirect to either /app/a or /app/b depending on the query parameters and launch our or their app.
Thanks in advance!
An archived documentation article about Universal Links,
https://developer.apple.com/library/archive/documentation/General/Conceptual/AppSearch/UniversalLinks.html
states:
"In your com.apple.developer.associated-domains entitlement, include a list [...], prefixed with applinks:, such as applinks:sub.mywebsite.com. Limit this list to no more than about 20 to 30 domains."
This document was updated last in 2016 and it appears to be archived since 2018.
Newer documentation, like
https://developer.apple.com/documentation/xcode/supporting-associated-domains
or
https://developer.apple.com/documentation/xcode/configuring-an-associated-domain
do not mention any limitations and since iOS 14 there is also an Apple provided CDN that apps use to fetch domain association data, which lets one think that the limit may have been lifted.
However, I'm in the process of implementing
universal links and shared web credentials for a portal app with many customers, a few hundreds of them have their own domain, and would like to be sure this is supported before putting all the work into it.
So if anyone with a similar setup or someone from Apple could share/verify that there is no such limit anymore (or if any, what number) I would highly appreciate it.
Bests
bbjay
I have managed enterprise app. universal link is working as expected from the safari but when I tried the same functionality from the managed edge browser, edge does not detect the universal link.
Unable to open our managed app from the edge browser, although from the safari it's working as expected.
Unable to open our managed app from the outlook/Team. although from a non-manged app, we can open our managed app.
Does edge browser support universal link?
iOS version : 17.4.1
Hi,
I have added associated domains support for our desktop app and it works fine on my machine. But when I deploy it on other machines, it is not launching.
It throws ‘The application ““ can’t be opened” message. It works fine when I install provisioning profile on those machines.
Xcode is not allowing me to code sign the app manually as part of build process. Till now we were **** the same for other apps.
Associated domain need a provisioning profile and I have created one distribution profile and code signed it. Now it works fine only on my machine and not working on other machines. It works only on other machines if I install provisioning profile.
What should be the issue? How do I work this macOS app on other machines without installing provisioning profile?
We've got a AASA file on our site that has a list of URLs that our App can handle.
These URLs follow a REST standard, but also have resource identifiers in them, for example
/site/:siteId
/site/:siteId/service/:serviceId
Our service IDs are limited to specific numbers, which we've hardcoded in our AASA file so that only specific service URLs will open. Our AASA file looks like the below
{
"applinks":{
"apps":[],
"details":[
{
"appID":"${appIdPrefix}.${bundleIdentifier}",
"paths":[
{
"/":"site/*/service/1/"
},
{
"/":"site/*/"
}
]
}
]
},
"webcredentials":{
"apps":[
"${appIdPrefix}.${bundleIdentifier}"
]
},
"appclips":{
"apps":[
"${appIdPrefix}.${bundleIdentifier}.clip"
]
}
In this example, hitting a URL like /site/1/service/1 works correctly - however, hitting a URL like /site/1/service/999 will also open the app, despite it not being a valid URL.
I'm assuming that the wildcard on site/*/ is causing the invalid URL to match.
How can I set my AASA up so that the site ID can still be any value, but the URL is matched strictly?
This page describes the procedure to create deep links in iOS. I was able to launch an IOS Companion app (name of the app in my case) using its deep link.
But the same is not working in AppleWatch. This is my plist to register a custom scheme - Companion:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleURLTypes</key>
<array>
<dict>
<!-- <key>CFBundleTypeRole</key>
<string>Viewer</string> -->
<key>CFBundleURLName</key>
<string><some unique ID></string>
<key>CFBundleURLSchemes</key>
<array>
<string>Companion</string>
</array>
</dict>
</array>
</dict>
</plist>
I have implemented onOpenURL(perform:) to handle app launches using a deep link (url).
var body: some Scene {
WindowGroup {
ContentView()
.onOpenURL(perform: { (link: URL) in
Log(String(format: "Link = %@", link.absoluteString))
// Use then deep link
})
}
}
In iOS, I tested deep links in two ways:
Wrote the full deep link in Notes app and tapped it.
Created another app called AppLauncher with a Button saying 'Launch using Deep link'.... which when clicked opens the deep link using open(_:options:completionHandler:).
Both the approaches work in iOS, but in watchOS, I can only try 2 because Notes app is not available for AppleWatch. So, I created another watchOS app called AppLauncher, which displays a SwiftUI Button saying 'Launch using Deep link', which when tapped, tries to open the link using openSystemURL(_:). But as mentioned in the documentation (linked earlier),
Opens the specified system URL.
this API only works for links associated with System apps i.e., Apple's call and message apps.
So, how else can I use deep link to launch another app? I believe it's possible to launch an app using its deep link because the info.plist keys required to define a deep link scheme association (CFBundleURLTypes, CFBundleURLSchemes etc) is valid for watchOS too.
I'm running my Capacitor app on my iPad on Developer mode and I haven't been able to get the Universal Link working.
https://my-domain.com//.well-known/apple-app-site-association in browser and via curl correctly returns the file.
running sudo swcutil dl -d https://my-domain.com --verbose
returns
SWCErrorDomain 8 {
Domain: "<_SWCDomain 0x600002c92d80> https",
Line: "532",
Function: "-[SWCDownloader(Private) _downloadAASAFileForDomain:applicationIdentifier:downloadRoute:discretionary:completionHandlers:]_block_invoke"
}
I made my way down through here: <https://developer.apple.com/documentation/technotes/tn3155-debugging-universal-links#Host-and-verify-your-AASA>
I continued onto the next section, but swcutil_show.txt file doesn't list my app even after uninstalling and re-deploying the app.
Any help is appreciated!
I have an application which supports universal links.
Say it supports the domain www.example.com and thus universal links can be easily opened via this. We will have applinks:www.example.com in associated domains.
Now say if I want to release another app and it also supports the same domain. Now how will iOS distinguish which app to open via universal links..?
Subject: Inquiry Regarding Placement of .well-known Folder for Hosting apple-app-site-association File
I am writing to inquire about the placement of the .well-known folder for hosting the apple-app-site-association file. Currently, we are working on configuring deep linking for our iOS app, and we have encountered a question regarding the appropriate location for hosting the apple-app-site-association file.
Our domain, service2-uat.mom.gov.sg, hosts various web assets, and we are considering placing the ".well-known" folder in a non-root directory, specifically at "https://service2-uat.mom.gov.sg/fwmc/api/stg/permanent/.well-known/apple-app-site-association", instead of the root directory.
Before proceeding with this configuration, we wanted to confirm whether it is permissible and supported by Apple's specifications and requirements. Our objective is to ensure compliance with Apple's guidelines while optimizing our server structure.
Could you please provide guidance or clarification on whether hosting the .well-known folder in a non-root directory is acceptable for serving the apple-app-site-association file?
Additionally, if there are any specific considerations or best practices related to this configuration, we would greatly appreciate your insights.
Thank you very much for your assistance in this matter. We look forward to hearing back from you soon.
Best Regards,
Senthil S
I have published the app on the App Store along with its corresponding app clip, my app clip is configured with some advanced experiences for each one of my clients, but whenever some users try to scan an NFC or QR Code they see the card rendering correctly with their configured banner image, but with the message "App Clip Unavailable".
The weird thing is that both iMessage and the website to which the associated domain is set and the apple-app-site-association is stored, renders the banner or card correctly, and when the users tap the banner or card they open the advanced app clip experience correctly without any issue.
I have attempted to troubleshoot the issue by checking the following:
if the app clip is below 15MB
if we are using a second level domain in my associated domain both for my app clip and app (excluding the www subdomain).
checking if the AASA is correctly stored inside .well-known directory
checking the configuration for the advanced experience
I opened a case: 102233443873, and added a bunch of videos and screenshot showcasing the issue, but I have not yet received a reply
The universal link for my app was working perfectly fine 2 days before but suddenly it stopped working.
We have not changed applinks, or AASA file for long time.
I followed the steps in this https://docs.flutter.dev/cookbook/navigation/set-up-universal-links to implement universal links and created a link that I published to the App Store. However, when I click on the deep link, I receive a 404 error in the browser saying the page can't be found.
When the app is installed, all the redirections with the deep link work correctly. My problem is navigating to the App Store to the app's page.
What should I check, and how can I determine if the problem is in the apple-app-site-association file or in some setting in the app?
I try to add * like prefix on url in app setting but this don't help.
I am trying to Execute Universal Link of Netflix show from My App in tvOS 17.2
When I Call the open(_:options:completionHandler:) to execute the Link it does open the Netflix App but open the landing page of Title. I have tried different alternative links but all has same behaviour.
The same Link works in iOS ans iPad OS. Here the links that I have tried and the code that handles the universal Link.
http://www.netflix.com/title/81731618
nflx://www.netflix.com/title/81731618
// Handle remote notification here
// For example, extract deep link and perform appropriate action
if let deepLink = userInfo["deep_link_key"] as? String {
// Handle the deep link here
print("Received Deep Link: \(deepLink)")
if let url = URL(string: deepLink) {
UIApplication.shared.open(url)
}
}
}
Hello Everyone,
we've encountered an issue with our iOS mobile application, particularly affecting users on iOS version 17. It appears that our universal deep links coming from redirects have ceased to function properly.
We've got quite a few marketing campaigns that send out promotional emails through an emailing system, which wraps our site's links inside their own. Obviously tapping these links does not open our app, instead directs the user to web mobile.
Older phones like iPhone X with iOS 16 still work properly.
We have checked domain association, and also when tapping direct deep link everything works properly. However, the issue arises specifically when users interact with marketing tracking links that redirect to a deep link. In this scenario, both Safari and Chrome fail to redirect outside of the browser environment. Instead, they execute an HTTP 301 redirection within the browser itself.
Is this something be expected from iOS version 17, is there a way to avoid this behaviour and still continue using marketing links with redirection?
Hi. We have 2 apps in the store with universal links working fine, and we are readying the launch of a new version, essentially the same codebase but with different branding and into a different territory. however with this one universal links are not currently working. When the app is installed, swcutil shows the following:
App ID: [REDACTED]
App Version: 331.0
App PI: <LSPersistentIdentifier 0x5ccc0ee20> { v = 0, t = 0x8, u = 0x6b8, db = E038B2E7-CA87-4BA2-A129-C25394D0F72F, {length = 8, bytes = 0xb806000000000000} }
Domain: [REDACTED]
User Approval: unspecified
Site/Fmwk Approval: denied
Flags:
Last Checked: 2024-02-16 12:06:39 +0000
Next Check: 2024-02-21 11:08:37 +0000
suggesting the CDN was denied access, but if I query the CDN using
https://app-site-association.cdn-apple.com/a/v1/DOMAIN
I get the correct app-association contents back.
with the previous apps, they were well established before we introduced universal links, but this one is not yet available on the store. the debug build pointing at production seems to work (not using mode=developer) but the TestFlight build does not.
we are confident in the contents of the app-association file as it mirrors the other apps.
It's been suggested that this could be because the app is not yet available in the store. Is this the case?
Hi,
I setup universal links (aka goto my website and it opens/adds-header-to-open my application). While in debug and testflight this worked flawlessly, in release I inconsistently have the header addon to open in app in safari. I don't understand why.
When I goto developer tools and test the link, it returns it should open my app, and shows a green checkmark like everything is okay. But right after if I goto Safari, it does not show the open in app header.
I've restarted my device several times and reinstalled the app with no luck in the open in app header in safari reliably being present.
I had this same problem with another app, and it wasn't working for the first day and randomly showed up for a while, and then stopped again. Idk what's wrong?
The only thing I can think of is we were messing with the MDM server and set it to None I believe at one point and it showed up (I think) - but perhaps that has nothing to do with it showing up.
Does MDM server management of devices prevent universal links? Weirdly before setting MDM server to none, it worked flawless in debug and testflight. As of now the MDM server is restored to original our business set.
So, I don't quite know what to do to debug this. The developer tools say it's fine, and debug/testflight work fine.
Any suggestions/options? Does MDM server affect universal links?
Thanks,
user: ASDF123456