我正在尝试为我的 iOS 应用程序实现通用链接 ( https://developer.apple.com/ios/universal-links/ ) 功能。该应用程序仅适用于拥有公司托管 iOS 设备的人员,并且该应用程序通过公司的 MDM 分发给他们。链接到应用程序的域是公司的内部网络,只能通过托管设备访问。到目前为止,一切都按预期工作。这就是我将正确的 JSON 文件放在例如https://myprivatenetwork.com/.well-known/apple-app-site-association的程度,并且我已经通过在关联域下mode=developer
添加成功地测试了 iOS 应用程序作为applinks:myprivatenetwork.com?mode=developer
它在https://developer.apple.com/documentation/safariservices/supporting_associated_domains中提到
但是,当我将域更改为applinks:myprivatenetwork.com?mode=managed
并通过 MDM 将应用程序分发给公司用户时,通用链接不起作用。这里https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_associated-domains提到了
managed
指定只有使用移动设备管理 (MDM) 配置文件管理的设备才能访问域。此模式需要 MDM 管理员的同意。”
但没有关于如何获得 MDM 管理员同意的详细信息。
该视频的第 18 分钟也讨论了这一点,但没有详细介绍托管模式案例:https ://developer.apple.com/videos/play/wwdc2020/10098/
如果您知道此解释中缺少的部分,请告诉我它是什么。我知道它一定与 MDM 端的某些设置有关。但不确定我需要与 MDM 团队沟通什么,以及他们需要做什么才能同意此应用程序和相关域。
更新: 到目前为止,我发现这似乎暗示了解决方案是什么。我还必须与 MDM 团队协调才能实际尝试。
https://developer.apple.com/forums/thread/664481 https://developer.apple.com/documentation/devicemanagement/installapplicationcommand/command/attributes?language=objc