objective-c – Mac App Sandbox Group容器问题
我在一个应用程序组中遇到了两个沙盒应用程序的问题.在我的Entitlements文件中,我有以下内容:
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/ PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>com.apple.security.app-sandbox</key> <true/> <key>com.apple.security.application-groups</key> <array> <string>TEAM_ID.com.Company.AppName</string> </array> </dict> </plist> 其中’公司’和’AppName’被我的公司替换,应用名称和TEAM_ID被我的团队ID替换.两个应用程序都具有这些完全相同的权利. 现在,当我构建并启动两个应用程序时,一切似乎都很顺利.除了在我的?/ Library文件夹中找不到“Group Containers”文件夹之外……还有一个’Containers’文件夹,其中包含两个应用程序的文件夹.但没有Group Containers文件夹. 我正在运行10.8.2,我的应用程序的部署目标是10.8. 根据开发人员库,它应该从10.7.4开始提供.我用过这个:https://developer.apple.com/library/mac/#documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/EnablingAppSandbox.html#//apple_ref/doc/uid/TP40011195-CH4-SW19来创建我的权利. 我究竟做错了什么? 谢谢, 解决方法
官方Apple Developer论坛上有人建议以编程方式创建文件夹,这是我的问题的解决方案!
NSString *groupContainer = [@"~/../../../Group Containers/TEAM_ID.com.Company.AppName" stringByExpandingTildeInPath]; [[NSFileManager defaultManager] createDirectoryAtPath:groupContainer withIntermediateDirectories:YES attributes:nil error:NULL]] 我已经将Group Container文件夹用于plist文件,其中我的主应用程序可以编写我的帮助器(deamon)应用程序可以读取的设置(使用initWithContentsOfFile:和writeToFile:NSMutableDictionary的方法).这完美现在:) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |