Android 2.1.2, устройство заблокировано, но, кажется, onPause и onResume вызывается несколько раз - PullRequest
1 голос
/ 11 июля 2011

У меня есть приложение, которое использует MediaPlayer для воспроизведения музыки. Когда я играю музыку и блокирую свое устройство, оно начинает вызывать onPause и onResume в разные периоды времени (это не время одной дорожки)

Мой журнал выглядит так:

07-11 10:08:50.933: INFO/Activity(9956): resume PlayerActivity
07-11 10:08:50.948: INFO/Activity(9956): pause PlayerActivity
07-11 10:08:56.300: INFO/Activity(9956): resume PlayerActivity
07-11 10:08:56.316: INFO/Activity(9956): pause PlayerActivity
07-11 10:09:21.839: INFO/Activity(9956): resume PlayerActivity
07-11 10:09:21.886: INFO/Activity(9956): pause PlayerActivity
07-11 10:09:27.003: INFO/Activity(9956): resume PlayerActivity
07-11 10:09:27.019: INFO/Activity(9956): pause PlayerActivity
07-11 10:18:49.738: INFO/Activity(9956): resume PlayerActivity
07-11 10:18:49.745: INFO/Activity(9956): pause PlayerActivity

Это нормальное поведение андроида Активность? Там, где не нажата ни одна кнопка или что-то еще сделано с устройством.

С наилучшими пожеланиями

Ответы [ 2 ]

1 голос
/ 07 февраля 2013

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

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...