【问题标题】:Exporting my app's database file from my development iPhone to my computer将我的应用程序的数据库文件从我的开发 iPhone 导出到我的计算机
【发布时间】:2010-11-12 16:22:43
【问题描述】:

我正在开发一个 iPhone 应用程序,我计划将其用于研究目的。当测试人员在我的开发手机上使用该应用时,它会将分析数据存储在本地数据库中(现在是 SQLite,但我不反对迁移到 CoreData)。

测试完成后,我需要能够将这个分析数据库从手机上复制到我的计算机上,以便对数据运行查询。实现这一目标的最简单方法是什么?如有必要,我将遍历数据,将其打印到设备日志中,然后将其重新导入桌面上的数据库,但我想找到一种方法来获取 .sqlite 文件而不通过运行它中间格式。

【问题讨论】:

    标签: iphone sqlite


    【解决方案1】:

    您可以使用 Xcode Organizer 从您的设备下载应用的 Documents 和 Library 目录的压缩快照。

    【讨论】:

    • 太棒了!这让我意识到我也可以将数据上传到应用程序,这样我就可以使用填充了特定信息的数据库来播种它。
    【解决方案2】:

    您总是可以尝试将其打印为 PDF,使用 UIKit 是一种简单的方法来导出信息和以简单的方式格式化,除非您认为这种方法不能应用于您的数据库;)

    您知道我们是否可以直接从 iOS 设备通过电子邮件发送 SQLite 数据库?

    【讨论】:

      【解决方案3】:

      最简单的方法是将UIFileSharingEnabled 键(作为布尔值,设置为YES)添加到您的Info.plist,然后使用如下内容:

      NSString *docsPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
      [[NSFileManager defaultManager] copyItemAtPath:whereverTheDatabaseIs toPath:[docsPath stringByAppendingPathComponent:@"exported.sqlite"] error:NULL];
      

      然后,您或您的用户将能够使用 iTunes 的文件处理问题从设备上获取数据库。

      已编辑 - 实际上,请参阅 Ole 的回答:我不知道那个技巧,它可能会快得多。

      【讨论】:

        【解决方案4】:

        感谢奥莱贝格曼。

        在管理器中打开您的应用,然后下载该特定发送框。所以它将创建一个 .xcappdata 扩展文件。
        您可以将扩展名重命名为 .zip,然后您会在 Finder 中找到与 InApp 目录文件夹相同的文件夹。您可以使用您的数据。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2020-04-02
          • 2011-06-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多