我正在编写命令行守护程序以从iPhoto读取图像。
我可以从使用Xcode项目创建工具创建的成熟Cocoa应用程序初始化并加载MLMediaLibrary
罚款。但是,当我尝试从命令行工具(也在Xcode中创建)中执行相同操作时,Xcode控制台窗口中会出现以下错误:
MLMediaLibrary error obtaining remote object proxy: Error Domain=NSCocoaErrorDomain Code=4097 "Couldn’t communicate with a helper application."
如何从命令行工具访问MLMediaLibrary
?
答案 0 :(得分:7)
要访问MLMediaLibrary
,您的应用程序必须进行沙盒和编码。
您似乎还必须为.entitlements文件添加一些永久性只读访问权限。
如果您想访问照片,iPhoto或Aperture库:
<key>com.apple.security.assets.pictures.read-only</key>
<true/>
如果您想访问iMovie和FinalCut:
<key>com.apple.security.assets.movies.read-only</key>
<true/>
如果您想访问iTunes或Logic:
<key>com.apple.security.assets.music.read-only</key>
<true/>
您可以在此处阅读我对MediaLibrary框架的糟糕体验: https://devforums.apple.com/message/1125821
答案 1 :(得分:-2)
我不认为康斯坦丁的陈述是正确的:sessionInfo()
R version 3.3.1 (2016-06-21)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252 LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C LC_TIME=English_United States.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
loaded via a namespace (and not attached):
[1] tools_3.3.1 xlsxjars_0.6.1 rJava_0.9-8 xlsx_0.5.7
根据我的测试,我可以在我的应用程序中使用In order to access MLMediaLibrary your application has to be sandboxed and codesigned.
,而我的应用程序没有代码签名,它没有权利文件,所以它显然不是沙盒应用程序。