如果我使用通过NSOpenPanel获取的文件URL,则创建一个AVPlayerItem并将AVPlayer:s的当前项目替换为可以正常工作。但是,如果我使用FileManager获取相同的文件URL,即使没有错误生成,AVPlayer也不会打开文件。为了调试目的,我什至对文件URL:s进行了'=='比较,并且评估结果为true(使用NSOpenPanel和FileManager提取的文件URL相同)。
我正在获取目录中视频的文件URL:s,然后使用视频文件的名称填充NSPopUpButton。从NSPopUpButton中选择一个视频应该将该视频加载到AVPlayer中,但是即使我传递给AVPlayerItem的URL是正确的,也无法正常工作。
有什么想法吗?
沙箱可防止打开尚未使用NSOpenPanel打开的文件。通过单击X从项目目标功能中删除沙盒切片,将消除此限制。
当我创建自己的程序时,删除沙箱不是问题。我不知道它是否以及如何影响AppStore的资格。