我正在开发一个应用程序,我想访问/User/<username>/Library/Containers
文件夹来读取一些数据。
在文件上迭代时,在我打开该特定位置上的NSOpenPanel
之前,不会返回任何数据。这种行为是意料之中的,因为应用程序是沙盒。
我安装了另一个名为“AppManager”的应用程序(沙盒,在应用程序商店中提供)。应用程序也从那个文件夹读取数据,但我只需要打开NSOpenPanel
文件夹上的/Applications
。
我读到了FileManager
方法URLForDirectory:inDomain:appropriateForURL:create:error:
这似乎是一个很好的起点,但不知何故这种方法不可用?
沙盒应用程序如何(如果可能)在不打开/User/<username>/Library/Containers
的情况下访问NSOpenPanel
?我可以只打开一个目录来访问多个目录吗?
当做,
萨沙
最佳答案
如果应用程序上没有NSOpenPanels
或拖动目录,则无法执行任何操作-这是一项安全措施,以便应用程序商店应用程序不会垃圾化不属于它们的数据
我看到程序要求用户只需在/
中选择NSOpenPanel
即可访问整个驱动器。再说一遍,最好是问你真正需要什么,因为你可能不会得到过去的审查。有些应用程序只有一个单独的用户界面,要求用户为它们NSOpenPanel
一些目录,直到你这样做才继续。
关于swift - 可以访问沙箱中的/User/Library/Container/<identifier>,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43428437/