将数据库保存在AppGroup的共享容器中是一种好方法吗?

时间:2017-04-25 11:16:53

标签: ios swift realm ios-app-group

我在我的应用程序中使用Realm作为数据库,我正在使用共享扩展来支持从其他应用程序共享媒体。由于我需要从共享扩展中访问我的数据库,因此我将realm文件从App的文档目录移动到Appgroup的共享容器。我有以下问题。

  1. 将数据库存储在共享容器空间中是否安全。
  2. 当我卸载应用程序时,共享容器内的文件仍然存在,因此将删除共享容器。
  3. 处理我的方案的任何其他最佳做法。

1 个答案:

答案 0 :(得分:4)

您似乎在Realm的GitHub问题跟踪器中交叉发布此内容。我https://github.com/realm/realm-cocoa/issues/4899#issuecomment-297121059发表的评论转发给您:

  
    
        
  1. 将数据库存储在共享容器空间中是否安全。
  2.        
     

是。事实上,这是在iOS上跨进程共享文件的唯一方法。

     
    
        
  1. 当我卸载应用程序时,共享容器内的文件仍然存在,因此将删除共享容器。
  2.        
     

根据https://stackoverflow.com/a/25027088/373262,iOS会从设备中移除最后一个有权访问它的应用程序,从而删除共享容器。

     

如果您发现没有发生这种情况的情况,我建议您提交雷达以告知Apple该错误。 https://bugreport.apple.com

     
    
        
  1. 处理我的方案的任何其他最佳做法。
  2.        
     

听起来你正在做的一切都是正确的。保持!

将来,请不要使用realm标记以及Realm的GitHub存储库交叉发布StackOverflow上的问题。 Realm工程团队会监控这两个渠道,即使您只是发布一次,您的问题也会得到解答。