检测我的应用是否具有完全磁盘访问权限



在提示用户向我的应用程序授予FDA之前,我必须知道我是否已经拥有它。

检查这一点的可靠方法是什么?

注意:我曾经检查过对~/Library/Safari/Bookmarks.plist的访问,但是在新的10.14系统上,此文件甚至可能不存在,因此现在允许我检查是否可以访问它。检查日历或联系人数据库文件时出现相同问题。

我自己遇到了这个需求,并发现了PermissionsKit。他们也在看~/Library/Safari/Bookmarks.plist- 他们在 10.15 中将其更改为使用~/Library/Safari/CloudTabs.db。在macOS 12中,我发现该文件不再存在于全新安装中,因此他们现在使用~/Library/Application Support/com.apple.TCC/TCC.db(透明度,同意和控制数据库,所以希望这不会那么容易消失!他们实际上已经更新了它以检查多个文件,因此应该更可靠。

遗憾的是,没有API来确定我们的访问状态,我们不得不求助于这种脆弱的解决方案。

最新更新