gpt4 book ai didi

ios - iOS 设备上用户特定的文档目录

转载 作者:行者123 更新时间:2023-11-28 12:22:07 26 4
gpt4 key购买 nike

在我的 iOS 应用中,我想存储一些用户特定的数据。

我希望 NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] 返回用户的文档目录,但它返回以下目录:/var/mobile/容器/数据/应用程序/%app_id%/文档

当我在我的 iOS 设备上使用另一个用户 (Apple-ID) 登录时,此路径保持完全相同。

这个目录似乎只是 Mac OS 中的用户特定的。

那么我应该使用哪个目录来存储 iOS 中的用户特定数据?

更新:

根据之前的答案和评论,似乎没有预期的行为。

最佳答案

来自 Apple Documentation

Where You Should Put Your App’s Files

将用户数据放在Documents/中。用户数据通常包括您可能希望向用户公开的任何文件——您可能希望用户创建、导入、删除或编辑的任何文件。对于绘图应用程序,用户数据包括用户可能创建的任何图形文件。对于文本编辑器,它包括文本文件。视频和音频应用甚至可能包含用户下载以供稍后观看或收听的文件。

将应用程序创建的支持文件放在Library/Application support/ 目录中。通常,此目录包含应用程序用来运行但应该对用户隐藏的文件。此目录还可以包含数据文件、配置文件、模板和从应用程序包加载的资源的修改版本。

请记住,默认情况下会备份Documents/ 和Application Support/中的文件。您可以使用 NSURLIsExcludedFromBackupKey 键调用 -[NSURL setResourceValue:forKey:error:] 从备份中排除文件。任何可以重新创建或下载的文件都必须从备份中排除。这对于大型媒体文件尤为重要。如果您的应用程序下载视频或音频文件,请确保它们不包含在备份中。

将临时数据放在tmp/ 目录中。临时数据包括您不需要长时间保留的任何数据。请记住在完成这些文件后将其删除,以免它们继续占用用户设备上的空间。当您的应用程序未运行时,系统会定期清除这些文件;因此,您不能指望这些文件在您的应用程序终止后仍然存在。

将数据缓存文件放在Library/Caches/目录下。缓存数据可用于需要比临时数据保留更长时间但不如支持文件那么长的任何数据。一般而言,应用程序不需要缓存数据即可正常运行,但可以使用缓存数据来提高性能。缓存数据的示例包括(但不限于)数据库缓存文件和暂时的可下载内容。请注意,系统可能会删除 Caches/目录以释放磁盘空间,因此您的应用必须能够根据需要重新创建或下载这些文件。

关于ios - iOS 设备上用户特定的文档目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44498984/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com