当我在macOS Sierra中运行我的沙盒应用程序时,我在日志中找到此消息:
2016-09-21 12:08:42.787003 MyApp[1505:63581] warning: <NSRemoteView: 0x610000123160> determined it was necessary to configure <NSVBSavePanel: 0x103e002a0> to support remote view vibrancy
Run Code Online (Sandbox Code Playgroud)
我在OS X 10.11中没有看到此消息.
当应用程序显示覆盖主窗口的NSSavePanel时,似乎会出现此消息.
我已经验证了包含该窗口的.xib文件,我在Xcode和Google的文档中搜索过,但我找不到任何解决问题的方法.
添加了9月22日
只要在方法中声明NSSavePanel:
NSSavePanel *panel = [NSSavePanel savePanel];
Run Code Online (Sandbox Code Playgroud)
消息将发送到日志.
在一个项目中,我有一个应用程序和一个作为代理运行的帮助程序.主应用程序用于设置用户首选项,可能暂时不使用.launchd在启动时启动的帮助应用程序使用这些首选项来执行一些日常任务.它读取并更新首选项文件.助手位于" /Applications/Main.app/Contents/Library/LoginItems".当这些应用程序没有沙箱时,很容易读取和写入位于的共享首选项文件/Users/username/Library/Preferences/.
我试图在帮助应用程序中添加权利键com.apple.security.temporary-exception.shared-preference.read-write,其中包含一个包含主应用程序首选项文件路径的数组:"/ Library/Containers/com.mycompany.MainApp/Data/Library/Preferences/".但它根本行不通.对于帮助应用程序,首选项文件不存在.