After rotation change second instance of service

89 views Asked by At

My app is a video player which streams videos from a nas. Therefore the video is also playing in the background, I have running a startforeground service where the media player is hold. So every time the activity starts I have to bind to the service, to be able to show the video. This is also required when rotation changed. Then when I want to bind to it, sometimes I don't bind to the already running service but It creates a new instance. So there are two instances of the service.

Yes, normally services should only be able to be instantiated one time, but in my case there are sometimes definitly 2 instances... :/

How can I prevent this? Had anybody already the same problem?


EDIT: service gets started and bound with following code:

Intent serviceIntent = new Intent(getApplicationContext(), MediaPlayerService.class); getApplicationContext().startService(serviceIntent);

Intent serviceIntent = new Intent(getApplicationContext(), MediaPlayerService.class); getApplicationContext().bindService(serviceIntent, mServiceConnection, Context.BIND_AUTO_CREATE);

1

There are 1 answers

1
gllowmas On

Sorry I wasn't clear because I was interested in which method in the activity life cycle you were doing this in. There are certain methods that are called on-orientation change. This other answer should point you in the right direction.I hope that helps.

Which activity method is called when orientation changes occur?