在文本视图中打印App内的调试日志

时间:2015-05-20 09:53:05

标签: ios objective-c debugging

我实际上正在寻找一种在应用内显示debug日志的方法,例如在UITextView内。我只想把它用于调试,而不是为了提高效率。

我一直在搜索,但您只是获得了如何更改调试日志和其他内容的布局的提示,但我没有看到如何访问调试输出的方法。

是否有人已经这样做了,或者有没有办法如何访问调试日志?我可以想象Apple完全阻止了这一点,你无法访问这些信息。

我想获得这些信息:

enter image description here

更新

我找到了可以help printing the log的东西。有人知道如何将其纳入项目吗?

3 个答案:

答案 0 :(得分:1)

您可以查看这些链接link 1link 2

答案 1 :(得分:1)

以下代码是将调试日志文本保存在文本文件中。这将有助于在textview中获取调试文本。 试试这个:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
                                                         NSUserDomainMask, YES);

NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *logPath = [documentsDirectory
                         stringByAppendingPathComponent:@"app.log"];

    freopen([logPath cStringUsingEncoding:NSASCIIStringEncoding],"a+",stderr);

    NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:logPath error:nil] ;
    NSNumber *fileSizeNumber = [fileAttributes objectForKey:NSFileSize];

    long long fileSize = [fileSizeNumber longLongValue];

    if(fileSize > 8000000){

        freopen([logPath cStringUsingEncoding:NSASCIIStringEncoding],"w",stderr);

    }

答案 2 :(得分:1)

每当你使用NSLog()时,将它(日志字符串)添加到数组中。然后使用UITableView以手动(按钮)或自动更新(委托)显示日志。

相关问题