有没有办法在应用程序运行时查看Core Data存储的内容?

时间:2012-08-06 13:24:04

标签: objective-c xcode macos core-data

在应用程序运行时,有没有办法(在XCode或第三方应用程序中)查看Core Data存储?

由于Core Data在后台依赖于SQLite数据库,有没有办法查看它背后的数据库,它包含什么,它是如何变化的?

4 个答案:

答案 0 :(得分:1)

  • 您可以通过在launch

    上传递参数来获取Core Data来记录输出
    -com.apple.CoreData.SQLDebug 1
    
  • 如果您使用的是模拟器,您可以导航到开发机器上的应用程序并查看sqlite文件。

  • 如果您使用的是设备,可以使用管理器访问sqlite文件

答案 1 :(得分:1)

我认为Xcode中没有内置方式可以打开/查看SQLite数据库。 但是,如果您在模拟器中运行应用程序,则可以使用您选择的sqlite-viewer轻松打开sqlite-database。

默认路径为:

~/Library/Application Support/iPhone Simulator/<IOS_VERSION>/Applications/<APPLICATION_UID>/Documents

sqlite-db的文件名取决于您的NSPersistentStoreCoordinator实现。

答案 2 :(得分:1)

查看Base,非常易于使用且用户友好,它有免费试用版,或者您当然可以购买完整版。

我正在使用试用版(“15分钟会话和自定义查询只返回5行。”)我很高兴..

您可以在以下位置找到您的模拟器.sqlite文件:
/ Macintosh HD / Users /“username”/ Library / Application Support / iPhone Simulator /“当前iOS开发版”/ Applications /“你的app目录(一些长号)”/ Documents /“someNumber_projectName.sqlite”

* 如果您安装了Lion,则在查找〜/ Library文件夹时会遇到问题,因为它已隐藏。查看this post,了解如何揭示它。

答案 3 :(得分:0)

在macOS上或在模拟器中的iOS上运行Core Data应用程序时,您可以使用 Core Data Lab 来跟踪运行该应用程序时的更改。这个专用的Core Data查看器包含一个数据更改跟踪器,该跟踪器以不同的颜色显示新的,已删除的和突变的。

此处有更多信息:https://betamagic.nl/products/coredatalab.html

免责声明:我是这个应用的创建者。