我想看看如果我不在Xcode中测试应用程序,在iOS模拟器中会发生什么。

例如,如果我在Safari模拟器中打开一个链接,看看控制台会发生什么, 或者如果我安装了一个网络应用程序,可以看到我在控制台按下的链接。

我该怎么做呢?

我想看到它在Xcode或终端,但这不是一个问题,如果我需要使用另一个软件。


当前回答

[苹果日志]

您可以在Mac上使用控制台应用程序(在设备中选择您的设备)查看使用NSLog, os_log, Logger发送的日志消息(您将不会看到打印功能的日志)。

也请检查(Action ->包含<Info/Debug>消息)

请注意,如果你想从WebView(UIWebView或WKWebView)查看日志,你应该使用Safary -> Develop ->设备

[查找崩溃日志]

其他回答

模拟器中有一个打开控制台的选项

Debug > Open System Log

或使用 键盘快捷方式:⌘/

iOS模拟器>菜单栏>调试>打开系统日志


老方法:

iOS模拟器将其日志直接打印到标准输出,因此您可以看到日志与系统日志混合在一起。

打开终端,输入tail -f /var/log/system.log

然后运行模拟器。

编辑:

这在Mavericks/Xcode 5中停止工作。现在你可以访问模拟器的日志在它自己的文件夹:~/Library/ logs /iOS模拟器/<sim-version>/system.log

您可以使用控制台。app查看,或者只是做一个尾巴(以iOS 7.0.3 64位为例):

tail -f ~/Library/Logs/iOS\ Simulator/7.0.3-64/system.log

编辑2:

它们现在位于~/Library/Logs/CoreSimulator/<simulator-hash>/system.log中

/Library/Logs/CoreSimulator/<simulator-hash>/system.log . tail -f ~/Library/Logs/CoreSimulator/<simulator-hash

iOS 8和iOS 9

在iOS 8和iOS 9下,这个位置现在是:

~/Library/Logs/CoreSimulator/<DEVICE_CODE>

所以,下面的方法是可行的:

tail -f ~/Library/Logs/CoreSimulator/<DEVICE_CODE>/system.log

DEVICE_CODE值可以通过下面的终端命令找到:

instruments -s devices

我可以直接通过iOS模拟器打开日志:Debug -> open System log…不确定这是什么时候引入的,所以它可能不适用于早期版本。

下载safari技术评论。在模拟器运行时,选择develop > simulator > localhost