Я использую отдельный класс только со статическими полями для хранения текущих данных приложения.
Он частично заполняется с sharedpreferences
при запуске приложения. Остальные данные - это результаты некоторых действий, которые используются для дальнейшего просмотра этих результатов (несколько действий, использующих результаты).
Я могу перейти на домашний экран, запустить другие приложения и т. Д., И когда я вернусь в свое собственное приложение, оно будет работать правильно.
Однако, поскольку новая функция Error Reporting
, я получаю несколько отчетов об ошибках, связанных с ошибкой nullreference
. Объект null
является ссылкой на статическое поле в упомянутом отдельном классе.
Поскольку я не могу воспроизвести ошибку, я склонен думать, что это связано с тем, что приложение убивается из-за нехватки памяти, и при повторном запуске оно вызывает oncreate
из действия, в котором пользователь находился в данный момент. статические данные в отдельном классе не восстанавливаются и при этом вылетает.
Я хотел бы знать: есть ли способ заставить приложение полностью «перезапустить» и не запускать последнее использовавшееся действие, если оно будет убито? Или это стандартное поведение?
Могу ли я сделать это программно? Например, когда статические поля пусты, перезапустите приложение?