NSHTTPCookieStorage +沙盒

时间:2011-10-29 22:44:02

标签: objective-c cookies osx-lion sandbox

我遇到了将[NSHTTPCookieStorage sharedHTTPCookieStorage]与沙盒相结合的问题。看起来该类无法访问位于Cookies.binarycookies中的~/Library/Cookies文件,即使我已在允许路径的com.apple.security.temporary-exception.files.home-relative-path.read-write数组中的我的权利文件中允许此位置。

除此之外,这是Apple制作的课程,即使没有这个修改也应该正常工作。

我也试过- (id)initWithStorageLocation:(NSURL*)storageFileURL,但是这已经在Mac OS X 10.6中引入并在Mac OS X 10.7中默默删除,所以我也不能使用它。

我该怎么办?所有方法(例如- (NSArray *)cookies都不会返回任何内容。

我正在使用10.7 SDK和最新版本的Xcode进行构建。

编辑:我和一个为Apple工作的人谈过,他说沙盒上的Cookie访问系统与iOS上的相同。这意味着如果没有您自己的实现(我现在将创建),您永远不能访问全局Cookie数据库。 NSHTTPCookieStorage只会在沙盒中显示您自己的Cookie。

1 个答案:

答案 0 :(得分:1)

查看来自控制台应用程序的日志 - 如果这是一个沙盒问题,它应该更详细地说明它失败的原因。您可以使用它来查找允许其工作所需的其他临时例外。

仅仅因为它是Apple制作的课程,并不意味着它会起作用。我的一个使用Apple的CoreMIDI API的应用程序出现问题 - 必须添加一些不起眼的com.apple.security.temporary-exception.mach-lookup.global-name权利才能使其正常运行。