在 Apple Silicon M1 Mac 上运行的 iOS 应用程序的默认应用程序中打开文件

问题描述

我目前正在调整我们在 Xamarin iOS 上编写的电子邮件应用程序,以便在 Apple Silicon M1 上正确运行。我遇到了目前无法解决的以下问题。问题是我们为 iOS 编写的代码在 Apple Silicon 上使用 Launcher.OpenAsync() 会打开“共享到”菜单,如果我尝试将其更改为来自 Xamarin.Essentials 的 Launcher.OpenAsync() 调用,它也会打开“共享到”菜单" 菜单,而不是使用认应用程序打开文件。我尝试使用 Xamarin.Mac 应用程序中的 myFunc2 并直接在来自 VS Mac 的 Apple Silicon 上运行它,它以这种方式按预期工作 - 使用认应用程序打开文件。然而,当从安装在 Apple Silicon 上的 iOS 应用程序运行时,它总是打开“共享到”菜单。这对我们来说是一个大问题,因为我们需要允许用户从我们的电子邮件编辑器中打开附件文件。有什么想法可以尝试解决问题吗?

解决方法

所以最后我用 Quick Look Preview Controller 替换了我们的 UIDocumentInteractionController,它在运行在 M1 上的 iPhone 和 iOS 应用程序上都按预期工作。