Запустить и остановить сервис - PullRequest
0 голосов
/ 21 июня 2019

У меня есть такой код, который запускается при нажатии кнопки

if (isMyServiceRunning(PlayerService.class)) {
        stopService(mIntent);
        unbindService(serviceConnection);
    } else {
            startService(mIntent);
            bindService(mIntent, serviceConnection, Context.BIND_AUTO_CREATE);
    }

Когда я нажимаю кнопку, и моя служба не работает, служба начинает работать (все хорошо здесь) Когда я нажимаю кнопкуи моя служба работает, служба останавливается и уничтожается (все хорошо здесь), но когда я нажимаю, чтобы служба начала работать, служба не работает

Моя служба

public class PlayerService extends Service {

private final IBinder binder = new LocalBinder();

@Nullable
@Override
public IBinder onBind(Intent intent) {
    return binder;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    doAnything();

    return START_STICKY;
}
public class LocalBinder extends Binder {
    PlayerService getService() {
        return PlayerService.this;
    }
}

}

Сервисное подключение

    private ServiceConnection serviceConnection = new ServiceConnection() {

    @Override
    public void onServiceConnected(ComponentName className, IBinder service) {

        PlayerService.LocalBinder binder = (PlayerService.LocalBinder) service;
        myService = binder.getService();
        Log.d("TEST", "MainActivity onServiceConnected");
        bound = true;
    }

    @Override
    public void onServiceDisconnected(ComponentName arg0) {
        Log.d("TEST", "MainActivity onServiceDisconnected");
        bound = false;
    }
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...