我想看看如果我不在Xcode中测试应用程序,在iOS模拟器中会发生什么。
例如,如果我在Safari模拟器中打开一个链接,看看控制台会发生什么, 或者如果我安装了一个网络应用程序,可以看到我在控制台按下的链接。
我该怎么做呢?
我想看到它在Xcode或终端,但这不是一个问题,如果我需要使用另一个软件。
我想看看如果我不在Xcode中测试应用程序,在iOS模拟器中会发生什么。
例如,如果我在Safari模拟器中打开一个链接,看看控制台会发生什么, 或者如果我安装了一个网络应用程序,可以看到我在控制台按下的链接。
我该怎么做呢?
我想看到它在Xcode或终端,但这不是一个问题,如果我需要使用另一个软件。
当前回答
我可以直接通过iOS模拟器打开日志:Debug -> open System log…不确定这是什么时候引入的,所以它可能不适用于早期版本。
其他回答
我可以直接通过iOS模拟器打开日志:Debug -> open System log…不确定这是什么时候引入的,所以它可能不适用于早期版本。
模拟器中有一个打开控制台的选项
Debug > Open System Log
或使用 键盘快捷方式:⌘/
查看控制台日志最简单的方法是添加consolelogs作为参数:
Ionic cordova运行ios -l—控制台日志
您将能够在终端上看到控制台日志。
XCode > 6.0和iOS > 8.0 下面的脚本适用于XCode版本> 8.0
我使用下面的小脚本跟踪模拟器日志到系统控制台。
#!/bin/sh
sim_dir=`xcrun instruments -s | grep "iPhone 6 (8.2 Simulator)" | awk {'print $NF'} | tr -d '[]'`
tail -f ~/Library/Logs/CoreSimulator/$sim_dir/system.log
您可以传入Grep中使用的模拟器类型作为参数。如上所述,根据Xcode版本,有simctl和instruments命令来查看可用的模拟器类型。 查看可用设备/模拟器列表。
xcrun instruments -s
OR
xcrun simctl list
现在,您可以将设备代码或模拟器类型作为参数传递给脚本,并将grep中的“iPhone 6(8.2模拟器)”替换为$1
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