2012-06-01 5 views
0

В моем приложении я получаю 3 NSLogs ниже:Узнайте, откуда берутся NSLogs?

AudioStreamBasicDescription: 2 ch, 44100 Hz, 'lpcm' (0x00000C2C) 8.24-bit little-endian signed integer, deinterleaved 
2012-06-01 17:05:43.397 App[1579:707] authenticateWithCompletionHandler: enter 
2012-06-01 17:05:43.399 App[1579:707] authenticateWithCompletionHandler: exit 

Однако я не знаю, где эти NSLogs откуда. Есть ли способ узнать, не пройдя каждый класс в моем проекте?

Эти журналы действительно прослушивают меня и затрудняют реальный просмотр реального выхода на консоль.

Любой совет будет оценен!

Спасибо!

+0

Сделайте проект широким поиском NSLog, если вы его не видите, то, вероятно, они сгенерированы изнутри sdk. –

+0

Как выполнить широкомасштабный поиск по проекту? –

+0

Я отправлю его в качестве ответа –

ответ

2

Да, в Xcode перейдите в маленькую строку поиска слева (см. Рисунок) и выполните поиск правильных ключевых слов.

enter image description here

Примечание: Я предполагаю, что вы импортировали некоторый Game Center материал для вашего проекта, то где они, вероятно, идут от

+1

Да, его выход из этой строки: [localPlayer authenticateWithCompletionHandler:^(NSError * e) { Нет NSLogs, так что это похоже на ОС, что крайне раздражает. –

2

Вы можете попробовать поискать «NSLog (@» authenticateWithCompletionHandler»Если что не дает никаких результатов, то, как упомянуто Омар, он может исходить от операционной системы.

3

сделать проект широкого поиск NSLog нажатия command + shift + f записи NSLog и нажмите клавишу ВВОД

, если вы не можете найти nslog, то они сгенерированы изнутри SDK.

0

Вы должны написать свои NSLogs, чтобы быть более подробными. Предоставьте столько информации, сколько вам нужно. Одна вещь, которую вы могли бы рассмотреть возможность сделать замену всех ваших утверждений NSLog с помощью макроса (т.е.: MyLog) как так:

#define MYLog(msg) NSLog(__FILE__ "(" __LINE__ "): " msg); 

Затем просто использовать MyLog, как если бы это было NSLog.

Примечание. Возможно, вам придется немного изменить это значение, поскольку Obj-C использует префиксные строки '@' для NSStrings, а NSLog принимает NSString. Я не очень хорошо разбираюсь в препроцессоре, поэтому я не знаю, как это сделать, но я предполагаю, что вы будете использовать препроцессор «##».

Смежные вопросы