使用NSMediaQueries和沙盒

时间:2012-08-22 02:30:02

标签: macos cocoa sandbox nsurl

我正在使用NSMediaQueries来检测已拍摄的新屏幕截图。但是要将我的应用程序推送到商店,我需要将其作为沙箱。

不幸的是,沙箱打破了我的NSMediaQueries,因为我无法访问返回的URL。

我知道Cloud App是沙盒,可以抓取最新的截图。

有没有人有一个提示如何解决这个问题?

感谢。

代码摘录:

query = [[NSMetadataQuery alloc] init];

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryUpdated:) name:NSMetadataQueryDidStartGatheringNotification object:query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryUpdated:) name:NSMetadataQueryDidUpdateNotification object:query];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(queryUpdated:) name:NSMetadataQueryDidFinishGatheringNotification object:query];

[query setDelegate:self];
[query setPredicate:[NSPredicate predicateWithFormat:@"kMDItemIsScreenCapture = 1"]];
[query startQuery];

numberOfScreenshots = [query resultCount];
[self uploadToAmazonS3:[[[query results]objectAtIndex:([query resultCount]-1)]valueForAttribute:NSMetadataItemURLKey]];

1 个答案:

答案 0 :(得分:0)

我与Apple讨论过。事实证明,如果您无权访问该文件夹,则该网址只会是nil