我有一个适用于 Android 和 iOS 的 flutter 应用程序。该应用程序支持通用链接。它应该在用户点击通过电子邮件收到的帐户激活链接时打开应用程序,如下所示:
https://my-domain.com/auth/create-password?token=authtoken
。一切都在模拟器上完美运行。如果用户点击来自邮件或笔记应用程序的链接,它也可以在物理设备上正常工作。但是,当从 safari 或 chrome 浏览器中点击时,链接将在该浏览器中打开,而不是在我的应用程序中打开。
我的 aasa 文件由
https://my-domain.com/.well-known/apple-app-site-association
提供,看起来像这样:
{
"applinks": {
"details": [
{
"appIDs": [
"my_team_id.com.mydomain.app.name"
],
"components": [
{
"/": "/auth/create-password*",
"comment": "Password creation"
}
]
}
]
}
}
我已将关联的域权利添加到我的应用程序中,
Runner.entitlements
文件如下所示:
<?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>com.apple.developer.associated-domains</key>
<array>
<string>applinks:my-domain.com</string>
</array>
</dict>
</plist>
我的
Info.plist
中也有这条线:
<key>FlutterDeepLinkingEnabled</key>
<true/>
从浏览器激活后,通用链接是否还能正常工作?我也找不到任何可靠的信息。