[英]UIFIlesharingEnabled exposes my private files
我在我的应用程序中启用UIFilesharingEnabled
选项设置为 true 但这也公开了我的文档文件和我的 sqlite.db 文件。
那么如何限制向用户或其他应用程序显示/访问我的数据库文件?
您应该查看 Library Directory 部分Apple File System Basics 。 在那里你可以找到关于在哪里写你的应用程序文件的所有信息:
图书馆
这是所有非用户数据文件的顶级目录。 您通常将文件放在几个标准子目录之一中。 iOS 应用程序通常使用 Application Support 和 Caches 子目录; 但是,您可以创建自定义子目录。 将 Library 子目录用于您不想向用户公开的任何文件。 您的应用不应将这些目录用于用户数据文件。 Library 目录的内容(Caches 子目录除外)由 iTunes 和 iCloud 备份。 有关 Library 目录及其常用子目录的其他信息,请参阅 Library Directory Stores App-Specific Files。
您可以查看这篇文章如何访问 App Bundle 中的 Library 目录
它可以通过使用 libraryDirectory 来实现。
private static var __once: NSString = {
let documentFolderPath = NSSearchPathForDirectoriesInDomains(
.libraryDirectory,
.userDomainMask,
true)[0] as String
let databaseFile = "DATABASE_FILE_NAME"
return "\(documentFolderPath)\(databaseFile)" as NSString
}()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.