Есть ли способ получить полный вывод консоли на xcode через код? - PullRequest
0 голосов
/ 20 февраля 2020

Мне нужно прочитать весь вывод консоли, поэтому я хотел бы реализовать функцию, которая будет отправлять все, что было напечатано, на мою электронную почту или что-то в этом роде.

Возможно ли это?

Я понимаю, что мог бы просто использовать другую функцию для записи операторов печати и т. Д. c, но мне также нужны выходные данные сторонних библиотек.

1 Ответ

0 голосов
/ 20 февраля 2020

Вы можете записать журнал в файл и затем отправить его по электронной почте. Я положил фрагмент здесь. Только один вопрос, почему вы хотите получить журнал по почте?

Objective- c

 NSArray *allPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
 NSString *documentsDirectory = [allPaths objectAtIndex:0];
 NSString *pathForLog = [documentsDirectory stringByAppendingPathComponent:@"logfile.log"];

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

Swift

let allPaths = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
let documentsDirectory = allPaths.first!
let pathForLog = documentsDirectory.stringByAppendingString("/logfile.log")

freopen(pathForLog.cStringUsingEncoding(NSASCIIStringEncoding)!, "a+", stderr)
...