【问题标题】:Writing to files on Mac when running on iOS device attached to Xcode在连接到 Xcode 的 iOS 设备上运行时写入 Mac 上的文件
【发布时间】:2012-04-25 10:06:26
【问题描述】:

当通过 Xcode 在 iPhone/iPad 上运行应用程序时,是否可以在 Mac 上打开文件进行写入?

我有一个需要设备才能运行的应用,因此不能选择使用模拟器。但是,我确实需要分析一些应用程序的输出。目前我必须写入设备上的文件,然后手动将它们同步到 Mac。我正在寻找一种将文件直接写入 Mac 的方法。

【问题讨论】:

  • 您也可以在每次编写该文件时通过电子邮件 (MFMailComposeViewController) 发送该文件。但是模态视图阻碍了正常的应用程序流程..
  • @Aadhira 同样,我也许可以在我的 Mac 上运行一个 ftp 服务器并将文件上传到那里。我真的很想使用一个可用的解决方案,如果有的话。

标签: ios xcode debugging device


【解决方案1】:

我建议使用NSLogger 通过 Bonjour 将您的日志数据流式传输到 Mac。它有一个 Mac 应用程序,可让您查看传入的数据。

对于更高级的日志记录,您还可以使用 connector 项目将 NSLogger 与 CocoaLumberJack 框架结合起来。

【讨论】:

  • 谢谢!使用 NSLogger 的任何人的注意事项 - 它的文档有点过时,它所依赖的 BWToolkit 不需要单独安装。只需构建并运行 NSLogger。这一点很重要,因为 BWToolkit 的文档已过时,并且不清楚如何在 XCode 4 上安装它 - 请参阅 stackoverflow.com/questions/5368878/xcode-4-and-bwtoolkit
【解决方案2】:

对于您的情况,可能的最佳解决方案可能在于利用控制台和 NSLog 将输出重定向到文件 - 这是设备和 Mac 之间的开放通道,只要您从 Xcode 运行应用程序,您就可以利用它。

关于如何做到这一点有很多问题和答案 - 这里有一个:

Log XCode gdb output to file with .gdbinit

此解决方案假定您只需要在通过 Xcode 运行应用程序时执行此操作,您的问题暗示了这一点。如果您需要在直接在设备上运行应用程序(而不是调试)时写入 Mac,则需要使用某种类型的网络文件传输,例如 FTP 或 HTTP。您可能可以使用以下命令在 Mac 上运行一个简单的基于 HTTP 的日志记录应用程序:

https://github.com/robbiehanson/CocoaHTTPServer

然后您只需将内容逐行发送到服务器。沿着这些思路还有许多其他可能的方法,并且可能是您可以利用的现有的基于 Mac 的解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-10-17
    • 2013-11-08
    • 2020-02-26
    • 2013-02-15
    • 2014-05-25
    • 1970-01-01
    • 2020-12-05
    • 2021-06-05
    相关资源
    最近更新 更多