看图打开老是提示授权问题怎么解决
2022-02-17

有小伙伴在使用Picsee的过程,经常会遇到打开图片(在Finder双击图片打开或者右键选择Picsee打开),提示授权所在目录,感觉这个提示很烦,有没有办法去掉。提示如下图所示。......

privilege

当然是有办法去掉这个提示,不过需要一些取舍,依据你的需求而定,进行一些配置后,这个授权提示不会弹出。

# 为什么这么设计

对于沙盒里应用程序而言,是需要严格遵守macOS操作系统对授权有关的规定。在这里而言,沙盒里的应用程序,想要访问Finder里的图片文件,必须需要经过用户的授权。当你点击某张图片使用Picsee打开的时候,其实是授权了该张图片的打开权限,所以Picsee能读取这个文件的图片内容。那么Picsee,为什么还需要弹出授权提示呢?这是因为,默认情况下,Picsee默认用户打开某张图片,想访问的是这张图片所在文件夹下的所有图片,所以弹出了授权所在文件夹的提示。

# 怎么解决

依据对弹出提示问题的原因分析,Picsee提供了两种方法解决该问题。

  • 配置为只打开一张图片,不需要授权读取整个文件夹。打开Picsee, 在偏好设置->看图->打开设置的打开选项中,把“提示授权所在目录读取权限”勾选去掉。如下图所示。

open_option

  • 提前授权文件夹读取权限,并且记录下来。这样打开图片时,由于有授权记录的存在,不会再次提示用户去授权文件夹。 在偏好设置->看图->打开设置授权文件夹中,事先添加授权文件夹,如下图所示。其实,用户每进行一次打开授权时,Picsee后台会默默记录下该授权路径,下一次打开就不会再去提示。

record_privilege_first

# 延伸扩展

有小伙伴,可能会有疑问:我能不能提前添加整个磁盘,即"/"路径到授权文件夹,这样做就一劳永逸了,但是实测,行不通,系统层面不支持。还有小伙伴,有疑问,能否在系统偏好设置->安全性与隐私->隐私->完全磁盘访问权限授权Picsee权限,可否解决这个问题,实测也行不通。还有一些小伙伴与市面上的一些APP对比,发现它们好像不需要授权的,是的,有可能,这些APP往往是不在沙盒内运行,未上架到AppStore上,所以他们不需要遵守苹果的规则,直接可以读取你的文件夹内的数据内容。

至今为止,我还未发现比较好的办法,彻底地解决该问题。如果有小伙伴有比较好的思路,可以联系我们,或者有什么新奇的APP能比我们更好的解决该问题,也请一定告诉我们。

# 终极解决办法[补充3.8]

在看开源代码学习的时候,发现了解决思路,只要授权Picsee完全磁盘访问,就可以做到打开图片,在不提示授权文件夹的情况下,也能读取当前打开图片所在目录下的其他图片。设置在,Picsee偏好设置->看图->打开设置中,把*完全磁盘访问勾选下,入下图所示。该特性已在Picsee1.4.7版本中支持。

fullDisk