Я видел много сообщений в SO по этому поводу, но не смог найти точный и самый простой способ вызова метода активности из класса обслуживания. Является ли широковещательный приемник единственным вариантом? Нет простого выхода? Мне просто нужно вызвать следующий метод в классе Activity после подготовки медиаплеера в классе Service.
Класс активности:
public void updateProgress() {
// set Progress bar values
songProgressBar.setProgress(0);
songProgressBar.setMax(100);
// Updating progress bar
updateProgressBar();
}
Класс обслуживания:
@Override
public IBinder onBind(Intent intent) {
Log.d(this.getClass().getName(), "BIND");
return musicBind;
}
@Override
public boolean onUnbind(Intent intent) {
return false;
}
@Override
public void onPrepared(MediaPlayer mp) {
try {
mp.start();
} catch (IllegalStateException e) {
e.printStackTrace();
}
// updateProgress();// Need to call the Activity method here
}
Подробнее здесь: https://stackoverflow.com/questions/235 ... vice-class