macos - 如何在cocoa应用程序中部署数据库文件

标签 macos cocoa

我是 Mac 应用程序开发新手。创建了一个跨网络同步数据的 os x 应用程序,该应用程序必须将数据存储在 sqlite db 文件的表中。信息.db

部署应用程序时,带有空表的数据库文件将位于应用程序内部

/Applications/myapp.app/somehere/info.db

第一次运行时应用程序是否应该将此 info.db 移动到其他数据文件夹?或临时目录,在插入数据之前?或者我应该直接提交对应用程序包内的文件的更改?此外,当用户更新时,以前版本存储的 info.db 中的信息将被新版本使用。那么,您能否建议如何部署?

谢谢

最佳答案

您无法更新应用程序包,因此您必须在首次运行时将空数据库复制到用户目录。如果您希望将此应用程序发布到 Mac App Store,则必须对其进行沙箱处理,这意味着您可以放置​​数据库的唯一位置是应用程序容器文件夹中。

您可以使用NSHomeDirectory()获取应用程序容器文件夹,无论您是否对应用程序进行沙箱处理,它都会起作用。

关于macos - 如何在cocoa应用程序中部署数据库文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17530895/

相关文章:

php - Mac : switch to php8. 0 由brew安装

ios - 当主线程阻塞时,如何获得断点/日志/增加的可见性?

ios - 通过 NSStream 判断连接建立成功和连接断开

objective-c - 给定一个 webView,如何更改不同类文件中的 URL?

xcode - 如何捕获 OSX 所有正在运行的进程的列表并将它们保存为 Xcode/Cocoa 中的文件?

python - 带有映射驱动器的 SMB 和 Python

objective-c - 如何检测 OSX 上正在运行什么应用程序

objective-c - 构建仅后台 COCOA 应用程序作为启动守护进程的缺点?

cocoa - (MACOSX) - 了解已安装的设备是否是从 DMG 安装的

ios - iOS 应用程序中的 Twitter 集成