Как отличить переключение активности от перехода на домашний экран в Android - PullRequest
0 голосов
/ 22 июля 2011

Я работаю на Android :: Приложение Media Player.Для простоты в приложении есть 3 действия: A, B и C. - действия.

Когда я переключаюсь с Действия A на B: onPause () и onStop () Действия A вызываются.Но когда я перехожу на домашний экран из действия A, вызываются те же функции: onPause () и onStop ().

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

Как я могу отличить это, япереключаюсь между действиями одного и того же приложения (или), идущего на домашний экран.

Ответы [ 3 ]

1 голос
/ 22 июля 2011

Я думаю, что решение состоит в том, чтобы определить, когда пользователь нажимает кнопку HOME.Вы можете сделать это, переопределив метод

    onUserLeaveHint()

класса деятельности.

0 голосов
/ 22 июля 2011

Возможно, вы могли бы использовать SharedPreferences для сохранения настроек приложения, когда оно используется.И всегда восстанавливать потом в onStop ()

0 голосов
/ 22 июля 2011

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

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

Что касается общего состояния приложения, вы не можете реально определить, присутствует ваше приложение на экране или нет, потому что приложение в Android простогруппа независимых компонентов (деятельность, услуги, контент-провайдеры и широковещательные приемники).Нет отдельного приложения с конкретными состояниями видимости как такового.Только действия есть, независимо друг от друга.

...