显示 macOS“...想要从其他应用程序访问数据。”被拒绝后再次对话

问题描述 投票:0回答:1

我有一个用 Swift + SwiftUI 编写的 macOS 非沙盒应用程序。该应用程序需要访问来自不同应用程序容器的数据。当我尝试访问此类数据时,它显示经典的““应用程序”想要访问其他应用程序的数据。”对话框:enter image description here

如果用户单击 “不允许” 按钮,Swift 会抛出

fileWriteNoPermission
Cocoa 错误。 处理此错误后,我想解释访问要求背后的原因,并要求用户允许它(通过单击“重试”按钮并重新显示系统对话框)。不幸的是,我还没有找到一种方法可以在不重新启动应用程序的情况下再次显示该对话框 - 第一次拒绝会被记住,直到进程重新启动。我的问题是:是否可以(以编程方式)使用户之前的决定无效并再次显示对话框,以便用户可以更改之前的决定并授予访问权限?

swift macos permissions
1个回答
0
投票

是否可以(以编程方式)使用户之前的决定无效并再次显示对话框,以便用户可以更改之前的决定并授予访问权限?

不。但有可能了解到用户已选择禁止访问,并设置您自己的应用内对话框,提醒用户您的应用需要此访问权限,并指导用户如何在“设置”中提供此访问权限。

© www.soinside.com 2019 - 2024. All rights reserved.