Падение Android Intent Activity - приложение перезапускается на полпути через приложение - PullRequest
2 голосов
/ 13 октября 2010

У меня есть довольно стандартное приложение для iPhone, которое создает серию из приблизительно 7 уникальных действий, инициализированных Intents.

Однако, если приложение падает на 7-м действии, приложение перезапускается на телефоне пользователя около 5-го действия.,Проблема в том, что информация, полученная в результате действий 1-4, является нулевой, что означает, что приложение бесполезно, и единственный способ заставить приложение работать снова - это либо постоянно нажимать назад, либо убивать процесс.

Почемуэто происходит, и есть ли способ заставить приложение запускаться обратно при первом действии, когда оно падает.

1 Ответ

0 голосов
/ 13 октября 2010

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

this.finish();

после начала следующего действия.

Проблема в том, что пользователь теперь не может нажать кнопку «Назад», чтобы изменить данные, которые были вставлены в действия ранее, потому что эти действия исчезли.

У вас могут быть общие проблемы с сохранением данных в течение циклов паузы и возобновления.Попробуйте вызвать эмулятор или телефон, когда вы занимаетесь одним из более глубоких занятий, а затем вернитесь в приложение, нажав и удерживая кнопку «Домой».Вы можете видеть, что данные предыдущих действий теперь также пусты.Поиграйте с этим и посмотрите на документы жизненного цикла приложения .

Это может быть способ проверить, доступны ли данные, а если нет, закрыть действие или вернуться к началу действия.

...