【发布时间】:2011-04-30 18:02:53
【问题描述】:
我创建了一个使用核心数据的应用。有没有办法在模拟器上查看 sqlite db?一个可能允许在模拟器上查询 sqlite db 的工具?像数据浏览器?
有没有办法将 iphone 模拟器浏览到 sqlite db 位置?
【问题讨论】:
标签: iphone sqlite ios-simulator
我创建了一个使用核心数据的应用。有没有办法在模拟器上查看 sqlite db?一个可能允许在模拟器上查询 sqlite db 的工具?像数据浏览器?
有没有办法将 iphone 模拟器浏览到 sqlite db 位置?
【问题讨论】:
标签: iphone sqlite ios-simulator
使用 Xcode 6,可以在此处找到模拟器基本目录:
~/Library/Developer/CoreSimulator/Devices/<device-id>/data/Containers/Data/Application
然后,可以在文档目录中找到数据库本身:
<app-id>/Documents/<name>.sqlite
可以在命令行使用sqlite3访问数据库。
【讨论】:
我刚刚下载了Base 的试用版,并且能够通过以下方式从模拟器中将其指向 .sql 数据库:
/Macintosh HD/Users/"用户名"/Library/Application Support/iPhone Simulator/"当前iOS开发版本"/Applications/
应用程序的文件夹名称不可读,但如果单击该文件夹,您应该能够看到名称熟悉的内容。
这在 Xcode 6 中已更改,现在位于 ~/Library/Developer/CoreSimulator/Devices/<device-id>/data/Containers/Data/Applaction,其中数据库本身可以在文档目录 <app-id>/Documents/<name>.sqlite 中找到
【讨论】:
~/Library/Developer/CoreSimulator/Devices/<device-id>/data/Containers/Data/Application
试试Lita,免费而且相当不错。
【讨论】:
如果您安装了免费的sqlite3,您可以在命令行中执行以下操作:
/Users/<user>/Library/Application\ Support/iPhone\ Simulator/<sim_version>/Applications/<apphash>/Documents/<yourfile>
查看应该查看哪个哈希的最简单方法:
ls -lt /Users/<user>/Library/Application\ Support/iPhone\ Simulator/<sim_version>/Applications/
您可以在提示符处运行.tables 以查看那里有哪些表,并运行.schema <tablename> 以查看其列。
【讨论】:
我对 Firefox 的 SQLite Manger 非常满意。免费插件。
【讨论】:
这是一个相当古老的帖子,但是我正在寻找其他东西,我降落在这里,我的 2 美分:
回复 WINSergey: (1) 恢复你的设备ID和整个路径最简单的方法是打印:
NSLog(@"app dir: %@",[[[NSFileManager defaultManager]
URLsForDirectory:NSDocumentDirectory
inDomains:NSUserDomainMask] lastObject]);
然后您将在 Debugging 区域看到输出或从模拟器打开 System Log。
(2) 另外,要从模拟器中了解设备 ID:XCode > WIndow > Devices > > 它会在右侧显示标识符。
我也在使用 SQLiteStudio,它是开源的,运行良好。
【讨论】: