加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – Mac App Sandbox Group容器问题

发布时间:2020-12-16 05:03:33 所属栏目:百科 来源:网络整理
导读:我在一个应用程序组中遇到了两个沙盒应用程序的问题.在我的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
我在一个应用程序组中遇到了两个沙盒应用程序的问题.在我的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的方法).这完美现在:)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读