Я новичок, который сделал простую программу, чтобы показать, как работают сервисы.Почему вызов onServiceConnected не вызван?
.....
toStartService = new Intent(this, SimpleService.class);
sc = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
Toast.makeText(MoreService.this, "SC: Binded", Toast.LENGTH_SHORT).show();
}
@Override
public void onServiceDisconnected(ComponentName name) {
Toast.makeText(MoreService.this, "SC: Unbinded", Toast.LENGTH_SHORT).show();
}
};
startService.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(MoreService.this, "Starting Service", Toast.LENGTH_SHORT).show();
startService(toStartService);
}
});
stopService.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
stopService(toStartService);
}
});
bindService.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if((isBound = bindService(toStartService, sc, BIND_AUTO_CREATE))) {
}
}
});
unbindService.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(isBound) {
unbindService(sc);
isBound = false;
}
}
});
}
Почему не передавая переменную подкожно (на bindService()) вызвать метод sc.onServiceConnected()? Что не так с кодом?
Я встретил этого следующее условие:
Когда я нажимаю [StartService] сервис начал хорошо, то [StopService] служба купировались хорошо.
Когда я нажимаю [startService], тогда [bindService] ничего не делает, ни [unbindService].
- Когда я нажимаю [bindService], его созданная служба, [stopService] не работает. Я нажимаю [unbindService], что служба вызывает метод onDestroy().
Почему служба, созданная bindService, разрушается при несвязанных? Я пытаюсь запустить сервис с помощью startService, но он не может связываться.
Принесите помощь, извините, если я был неправ.
У меня точно такая же проблема. Теперь я понимаю, почему многие люди ненавидят Java ... В любом случае будьте очень осторожны, когда говорите «что не так с кодом», потому что на этом сайте есть миллионы притворяющихся «полицейских», которые ничего не делают, кроме как обсуждать вопросы как твой. –