Нужно ли отменять привязку сервиса, когда я не вызываю startService? - PullRequest
0 голосов
/ 03 июля 2019

При запуске я вызываю bindService в onCreate() моего первого действия, чтобы я мог получить доступ к своему объекту медиаплеера, который является статическим объектом.

public static void bindMusicService(Context c){
        /*mediaPlayerServiceIntent binds our connection to the MediaPlayerService. */
        mediaPlayerServiceIntent = new Intent(c, MediaPlayerService.class);
        c.bindService(mediaPlayerServiceIntent, serviceConnection, Context.BIND_AUTO_CREATE);
        mServiceIsBound = true;
        Log.i("Main","Service is bound!");
}

Теперь, когда я нажимаю на песню в своей деятельности, я звоню:

ContextCompat.startForegroundService(context, intent);

Но что, если пользователь не нажимает на песню и просто закрывает приложение? Мне все еще нужно позвонить unbindService(); в onPause()?

Поскольку, когда пользователь нажимает на песню, он показывает уведомление о том, какая песня воспроизводится, и когда приложение перемещается в фоновый режим или удаляется и вызывается unbind , уведомление не будет работать больше.

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