MediaPlayerService запускается в фоновом режиме и блокирует активность на несколько секунд - PullRequest
0 голосов
/ 31 января 2011

Я безуспешно искал ответ по этой проблеме. Какова ситуация?

У меня есть TabWidget с двумя вкладками. Во-первых, есть активность, которая отображает видео в VideoView. Второй отображает изображения в GridView. При нажатии на изображение GridView запускается новое действие. Он отображает изображение в ImageView. Проблема в том, что когда я нажимаю кнопку «Назад», это последнее действие удерживается около 4,5 секунд, прежде чем вернуться на вкладки. В LogCat я вижу, что в это время MediaPlayerService запускает видео, которое находится на первой вкладке. Я уверен, что это и есть причина такой задержки.

Мой вопрос: почему запускается MediaPlaterService? Он должен отображать вкладку, которая не имеет ничего общего с VideoView. Я явно что-то упускаю, поэтому, пожалуйста, помогите.

Заранее спасибо,

светились

Ответы [ 2 ]

1 голос
/ 24 февраля 2011

Мне удалось решить эту проблему, но я забыл опубликовать ответ. Извините за это.

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

Спасибо, CameronW, ваше предложение помогло мне начать работу.

светились

0 голосов
/ 31 января 2011

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

...