有没有一种方法可以从iPhone设备读取应用程序日志?类似于Android的LogCat?
正如Zoul所说,你可以在组织器中获取它们。但在此之前,你应该告诉你的应用程序将日志存储在例如“文档”文件夹中。这样当你在组织器中提取应用程序数据时,你就会在那里找到日志。
现在,为了让你的应用程序将NSLog()
输出重定向到文件中,你应该像这样做:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fileName =[NSString stringWithFormat:@"%@.log",[NSDate date]];
NSString *logFilePath = [documentsDirectory stringByAppendingPathComponent:fileName];
freopen([logFilePath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr);
最后一句话实际上是将输出重定向的语句。
因此,一旦完成,您的应用程序日志将存储在应用程序文档文件夹中。
您不知道如何提取应用程序数据吗?在这里你会找到答案。
希望能对你有所帮助。
idevicesyslog | grep <your app name>
。这将显示来自NSLog
语句的所有调试信息和日志,就像在Android中的LogCat一样。这种方法的优点是:
grep
)grep
的完整过滤功能从连接到您的计算机的设备上?打开Xcode组织器(Cmd+Shift+O),单击设备,选择“设备日志”选项卡。