我有一个用 Swift + SwiftUI 编写的 macOS 非沙盒应用程序。该应用程序需要访问来自不同应用程序容器的数据。当我尝试访问此类数据时,它显示经典的““应用程序”想要访问其他应用程序的数据。”对话框:
fileWriteNoPermission
Cocoa 错误。 处理此错误后,我想解释访问要求背后的原因,并要求用户允许它(通过单击“重试”按钮并重新显示系统对话框)。不幸的是,我还没有找到一种方法可以在不重新启动应用程序的情况下再次显示该对话框 - 第一次拒绝会被记住,直到进程重新启动。我的问题是:是否可以(以编程方式)使用户之前的决定无效并再次显示对话框,以便用户可以更改之前的决定并授予访问权限?
是否可以(以编程方式)使用户之前的决定无效并再次显示对话框,以便用户可以更改之前的决定并授予访问权限?
不。但有可能了解到用户已选择禁止访问,并设置您自己的应用内对话框,提醒用户您的应用需要此访问权限,并指导用户如何在“设置”中提供此访问权限。