我有一个正在开发的iPhone应用程序,我计划用于研究目的。当测试人员在我的开发手机上使用该应用程序时,它会将分析数据存储在本地数据库中(现在是SQLite,但我并不反对迁移到CoreData)。
测试完成后,我需要能够将此分析数据库从手机上复制到我的计算机上,以便我可以对数据运行查询。实现这一目标的最简单方法是什么?如果有必要,我将遍历数据,将其打印到设备日志,然后将其导回到桌面上的数据库,但我想找到一种方法来获取.sqlite文件而不通过它运行中介格式。
答案 0 :(得分:1)
您可以使用Xcode Organizer从您的设备下载应用程序的Documents and Library目录的压缩快照。
答案 1 :(得分:1)
您可以随时尝试将其打印为PDF,使用UIKit是一种简单的方法,可以轻松导出信息和格式化,除非您认为此方法不适用于您的数据库;)
您知道我们是否可以直接从iOS设备发送SQLite数据库?
答案 2 :(得分:0)
最简单的方法是将UIFileSharingEnabled
键(作为布尔值,设置为YES
)添加到Info.plist中,然后使用以下内容:
NSString *docsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
[[NSFileManager defaultManager] copyItemAtPath:whereverTheDatabaseIs toPath:[docsPath stringByAppendingPathComponent:@"exported.sqlite"] error:NULL];
然后,您或您的用户将能够使用iTunes的文件处理malarkey从设备中获取数据库。
编辑 - 实际上,看到Ole的回答:我不知道这个技巧,它可能会更快。
答案 3 :(得分:0)
Thanx ole begemann。
在组织者中打开您的应用程序,然后下载该特定发送文件夹。所以它将创建一个.xcappdata扩展文件 您可以将扩展名重命名为.zip,然后您将在Finder中找到与InApp目录文件夹中相同的文件夹。并且您可以处理您的数据。