Создает ли Crashlytics отчет о сбое при завершении работы приложения с недостаточным объемом памяти (iOS)? - PullRequest
0 голосов
/ 30 октября 2018

Создает ли Crashlytics отчет о сбое, когда система закрывает приложение iOS из-за нехватки памяти и приложение находится в:

  1. Фон
  2. Foreground

Ответы [ 2 ]

0 голосов
/ 30 октября 2018

Да. Crashlytics >> OOM падает. Вы можете увидеть свою статистику для различных сборок.

enter image description here

Обычно маловероятно, что приложение убьет вас на переднем плане. На самом деле довольно необычно для приложения убивать приоритетное приложение из-за проблем с памятью. В большинстве случаев это происходит, когда ваше приложение находится в фоновом режиме. Потому что другие приложения должны использовать память для работы.

Для устройства с 2 ГБ оперативной памяти лучше всего, чтобы ваше приложение занимало до 1 ГБ памяти * на переднем плане и 100 МБ в фоновом режиме. Я знаю, например, что если вы откроете новую вкладку в Safari, то это займет около 100 МБ из вашей памяти. И если вы откроете еще 3-4 приложения, ваше приложение станет менее приоритетным и с большей вероятностью будет уничтожено из памяти. И если ему придется выбирать между двумя приложениями, которые в последнее время не использовались, то, скорее всего, он выберет приложение с большим объемом памяти.


*: если ваше приложение использует 1 ГБ памяти, ваше приложение оказывает давление на другие приложения. Не непосредственно ваша проблема, но все же нужно учитывать. Вы не хотите быть плохим приложением для ОС. Следовательно, 300Mb более разумно.

0 голосов
/ 30 октября 2018

На основании информации , которую мне удалось найти , ответ - да, да, но только если приложение работало на переднем плане, когда произошло прекращение.

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

...