Как сообщить об ошибке и сбоях на сервере в iOS

Я занимаюсь разработкой приложения для iOS 7 и более поздних версий, и мне хотелось бы узнать, как я могу сообщить об ошибках и сбоях приложения, когда оно будет доступно в App Store без необходимости интеграции какой-либо третьей стороны, чтобы сделать это.

Мне нужно сообщать об ошибках, которые могут произойти на сервере, поэтому я думал о том, чтобы сохранить ошибки, которые мне интересны, чтобы о них сообщали (например, об ошибках при получении данных от служб), и отправлять файл на сервер по адресу определенный момент. Я не знаю, если это хороший подход, если это:

1) Должен ли я явно запрашивать у пользователя разрешение на то, чтобы приложение сообщало об ошибках? (просмотр предупреждений)

2) Может ли файл с журналами ошибок отправляться всякий раз, когда я хочу, или должен быть пользователь, который запрашивает приложение для его отправки?

Есть ли лучший подход к этому? С другой стороны, в отношении сбоев приложения: возможно ли сохранить их в файл?

заранее спасибо

1 ответ

Решение

Сторонние библиотеки, такие как Crashlytics, делают всю хорошую работу, и многие люди предпочитают это, но если вы настаиваете, у вас может быть собственный сервис, отправляющий файл, содержащий подробности сбоя.

Следующая функция записывает подробности сбоя на консоль;

void uncaughtExceptionHandler(NSException *exception) {    
    NSLog(@"CRASH: %@", exception);      
    NSLog(@"Stack Trace: %@", [exception callStackSymbols]);    
    // Internal error reporting
}

Затем вы можете получить доступ к консоли журнала и записать эти данные в файл.

Гораздо более сложное и конкретное решение можно найти здесь

Другие вопросы по тегам