【发布时间】:2022-01-21 22:52:31
【问题描述】:
我有一个包含多个方案的应用,我希望每个方案都有一个不同的关联域。
我有以下.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:$(ASSOCIATED_DOMAIN)</string>
<string>webcredentials:(ASSOCIATED_DOMAIN)</string>
</array>
</dict>
</plist>
我的.xcconfig 文件如下所示(?mode=developer 仅用于验证一切正常,将被删除):
// ...
ASSOCIATED_DOMAIN="my.domain.com?mode=developer"
我尝试使用以下命令验证我的链接,但这会打开移动版 Safari:
xcrun simctl openurl booted 'https://my.domain.com/app/link'
我的/.well-known/apple-app-site-association 文件是可访问的,当我内联我的域并删除$(ASSOCIATED_DOMAIN) 时,通过打开应用程序而不是 Safari,应用程序链接按预期工作。在这种情况下,我的.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?mode=developer</string>
<string>webcredentials:my.domain.com?mode=developer</string>
</array>
</dict>
</plist>
有人有什么建议吗?谢谢!
【问题讨论】: