2014-11-24 3 views
1

Мое приложение - это видеопроигрыватель, который передает видео с nas. Поэтому видео также воспроизводится в фоновом режиме, у меня есть начальная служба, в которой удерживается медиаплеер. Итак, каждый раз, когда начинается действие, я должен привязываться к сервису, чтобы показывать видео. Это также требуется при изменении вращения. Затем, когда я хочу привязываться к нему, иногда я не привязываюсь к уже запущенной службе, но он создает новый экземпляр. Таким образом, есть два экземпляра службы.После изменения вращения второй экземпляр службы

Да, как правило, услуги должны быть только в состоянии быть создан один раз, но в моем случае иногда бывают случаи, определенно 2 ...:/

Как я могу предотвратить это? У кого-то уже такая же проблема?


EDIT: служба запускается и связала с помощью следующего кода:

Намерение serviceIntent = новый Intent (getApplicationContext(), MediaPlayerService.class); getApplicationContext(). StartService (serviceIntent);

Intent serviceIntent = новое намерение (getApplicationContext(), MediaPlayerService.class); getApplicationContext(). BindService (serviceIntent, mServiceConnection, Context.BIND_AUTO_CREATE);

+0

Вы можете разместить метод в деятельности, где вы создаете объект? – gllowmas

+0

Я отредактировал и добавил его на мой вопрос;) – mario

ответ

1

Извините, но я не был ясно, потому что меня интересовал какой метод в жизненном цикле деятельности, в котором вы это делали. Существуют определенные методы, которые называются изменения ориентации. Этот другой ответ должен указать вам в правильном направлении. Я надеюсь, что это поможет.

Which activity method is called when orientation changes occur?

+0

ah sry. Я создаю свой сервис в onCreate. hmm все же создание экземпляра службы несколько раз не должно быть возможным, и должно быть решение. но я подумаю о том, как вы ответили. – mario