Xamarin 通用链接不请求苹果应用程序站点文件



我正在尝试在我的iOS Xamarin应用程序中实现通用链接。 我已经将苹果-应用程序-站点-关联文件上传到我的服务器,将其作为应用程序/json 发送并进行测试以确保它下载。

然后,我将以下内容添加到 Entitlements.plist 中:

<dict>
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:mydomain.com</string>
<string>applinks:*.mydomain.com</string>
</array>
</dict>

我需要链接在所有子域中工作,所以我的理解是包括根域和通配符条目,因此上面的两个条目。 苹果应用网站关联文件从根域和所有子域提供。

我正在通过Visual Studio在调试模式下测试我的应用程序,以实际设备(iPhone XS(进行测试。 我的理解是,当安装应用程序时,它将尝试从服务器下载苹果应用程序站点关联文件,但是,当我检查我的服务器日志时,没有发生这种情况的记录。

我尝试从手机中删除该应用程序,重新构建并再次运行,但没有快乐。

我尝试使用浏览器访问苹果应用程序站点关联文件并加载,服务器日志显示已请求该文件。

显然,我的通用链接不起作用的原因是我的应用程序从不请求此文件,但我现在不明白为什么。

在 Xamarin iOS 中设置通用链接的步骤:

  1. apple-app-site-association文件上传到网站的根目录或.well-known子目录中,并确保通过HTTPS提供该文件

    1.1 如果它是通过HTTPS提供的,并且您不需要以iOS8为目标,请不要费心尝试 对 JSON 文件进行签名。一个简单的JSON文件就可以了。

  2. Apple 开发人员中心为应用启用“Associated Domains”功能,并重新生成provisioning配置文件

  3. 在"Associated Domains"部分中将要为其添加通用链接的域添加到您的iOS Entitlements file

  4. 确保添加应用链接:prefix (ex. applinks:ctcode.wordpress.com)在 AppDelegate 类中实现逻辑

参考:通用链接和 ios 中的通用链接

相关内容

最新更新