登录时由多个用户访问的核心数据值(iOS Swift)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了登录时由多个用户访问的核心数据值(iOS Swift)相关的知识,希望对你有一定的参考价值。

我有一个应用程序,其中UITableView用于表示朋友列表。现在,这个表由存储在核心数据中的值更新,我通过Parse将朋友值下载到核心数据。我没有直接访问Parse来更新tableView,而是决定更新Core Data然后更新tableView,因为我需要应用程序其他部分的朋友信息,并认为使用Core Data比调用Parse更有效率一次又一次。一切正常!

但是,我的应用程序有一个登录系统,用户可以使用该应用程序。当我创建另一个虚拟用户来测试它时,我发现我的实际帐户中存储在Core Data中的朋友值被用于更新朋友列表tableView!实际上tableView应该为空(新用户)。

我不确切知道Core Data是如何工作的,但我认为它使用设备内存的某些部分来存储实体。我的问题是,是否可以使用Core Data存储与登录同一设备的其他用户无法访问的特定用户相关的私人信息?或者我应该在需要信息时继续拨打Parse电话?

希望你们理解我的问题,谢谢!

答案

ios不是一个多用户系统。您的应用将其文件存储在沙盒文件夹结构中,此沙箱独立于您在应用中实现的任何用户登录。

当新用户登录时(或者,如果您愿意,当用户注销时),您可以删除存储在Core Data中的任何您不希望其他用户有权访问的数据。

另一答案

Parse可以通过Local Storage离线保存数据或通过Cache Policy缓存请求

它们比创建自己的数据库(通过CoreData)快得多。

以上是关于登录时由多个用户访问的核心数据值(iOS Swift)的主要内容,如果未能解决你的问题,请参考以下文章

登录屏幕 SWIF5 后返回上一个 viewController

多个用户访问相同的用户默认数据 Swift

多个核心数据实例

使用核心数据 iOS 的登录 ID 和密码

iOS - 如何使用钥匙串/核心数据创建登录过程?

iOS 中的登录功能