iOS 8应用程序组目录的预期生命周期是什么?

iOS 8应用程序组目录的预期生命周期是什么?,ios,ios-app-group,Ios,Ios App Group,我开始研究iOS 8扩展,我发现应用程序组是在主机应用程序和扩展程序之间传递数据的机制。这种数据共享可以通过NSUserDefaults、平面文件和核心数据来完成。设置应用程序组时,将在应用程序沙箱外部的设备/模拟器上创建一个新目录。可以从主机应用程序和扩展程序访问该目录,并且来自同一帐户/团队的其他应用程序似乎也可以访问该目录 鉴于所有这些,我想知道共享应用程序组目录及其内容的生命周期是什么。我找不到任何苹果的文档来解释这一点。模拟器上的一些实证测试表明,当安装了多个访问应用程序组的应用程序时

我开始研究iOS 8扩展,我发现应用程序组是在主机应用程序和扩展程序之间传递数据的机制。这种数据共享可以通过NSUserDefaults、平面文件和核心数据来完成。设置应用程序组时,将在应用程序沙箱外部的设备/模拟器上创建一个新目录。可以从主机应用程序和扩展程序访问该目录,并且来自同一帐户/团队的其他应用程序似乎也可以访问该目录

鉴于所有这些,我想知道共享应用程序组目录及其内容的生命周期是什么。我找不到任何苹果的文档来解释这一点。模拟器上的一些实证测试表明,当安装了多个访问应用程序组的应用程序时,当具有该应用程序组权限的最后一个应用程序被删除时,目录将被删除。这是我期望看到的。我想确认一下情况是否属实。此外,在低阀瓣条件下,系统是否有可能清除该位置

我正在尝试确定将我的应用程序的主要核心数据数据库存储在此应用程序组位置是否“安全”,或者是否应该在该位置复制数据。我不希望我的主数据库被系统意外地从我下面抹去


另外,应用程序组目录的目的是什么?它们应该仅用于与扩展共享数据,还是作为来自同一开发人员帐户/团队的应用程序之间的通用数据共享机制?

我也在苹果开发论坛上发布了这篇文章,并从苹果开发人员关系中得到了回复。他们是这样说的:

在低阀瓣条件下,系统是否有可能清除该位置

那不会发生

我正在尝试确定将我的应用程序的主要核心数据数据库存储在此应用程序组位置是否“安全”,或者是否应该在该位置复制数据

将核心数据存储放在应用程序组目录中是完全合理的

另外,应用程序组目录的目的是什么

它们的存在使得应用套件可以共享数据。我认为最清晰的表达来自Mac文档。“应用程序沙盒设计指南”中说:

[…]应用程序可以使用com.apple.security.application-groups权限请求访问共享容器,该容器对于同一开发团队生成的多个应用程序是通用的。此容器用于不面向用户的内容,如共享缓存或数据库