2012-05-16 2 views
0

Я испытываю странное поведение своего приложения на некоторых устройствах. Каждый раз, когда мое приложение сворачивается и снова открывается, мое приложение перезапускается с самого начала. И это происходит только с некоторыми устройствами, и я не уверен, почему это происходит. Кто-нибудь сталкивался с такой проблемой? Пожалуйста, дайте мне знать решение.Приложение Android Странное поведение на некоторых устройствах

ответ

5

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

Вы не можете гарантировать, что ваше приложение будет оставаться в живых (если это не сервис), поэтому вы должны проектировать приложение вокруг этого.

1

Это может быть связано с низкой памятью на этих устройствах. Однако, что вы можете сделать попробуйте, чтобы сделать это, чтобы установить android:alwaysRetainTaskState="true" на вашу первую активность в манифесте. Этот атрибут будет стараться сохранить активность приложения в памяти даже в ситуациях с низкой памятью.

Согласно разработчику docs:

андроида: alwaysRetainTaskState

ли или нет состояние задачи, что активность в завещании всегда будет поддерживаться системой - «истина», если это будет и «false» , если системе разрешено выполнить сброс задачи до ее начального состояния в определенных ситуациях. Значение по умолчанию неверно". Этот атрибут равен , который имеет смысл только для корневой активности задачи; он игнорируется для всех другие виды деятельности.

Как правило, система очищает задачу (удаляет все действия из стека над корневой активностью) в определенных ситуациях, когда пользователь повторно выбирает эту задачу с главного экрана. Как правило, это делается, если пользователь не посетил задачу в течение определенного времени, например 30 минут.

Однако, когда этот атрибут является «истинным», пользователи всегда будут возвращать задачу в ее последнем состоянии, независимо от того, как они туда попадают. Это полезно, например, в приложении, таком как веб-браузер, где существует много состояний (например, несколько открытых вкладок), которые пользователи не любят проигрывать.

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