ClassCastException, когда bindService в другой службе
Service1
public class Service1Binder extends Binder {
public Service1 getService() {
return Service1.this;
}
}
Service2
final ServiceConnection conn = new ServiceConnection() {
public void onServiceConnected(ComponentName name, IBinder service)
Service1Binder mBinder = (Service1Binder) service;
Service2.this.service1 = (Service2) mBinder.getService();
}
public void onServiceDisconnected(ComponentName name) {
Log.i(LOG_TAG, "onServiceDisconnected");
};
};
public void onCreate() {
final Intent intent = new Intent();
intent.setClassName("package", "Service1"); ;
bindService(intent, conn, 0);
}
И я получил:
Необработанное исключение в пакете процессов: package.Service1$Service1Binder не может быть приведен к package.Service1 $ Service1Binder Исключение в потоке "Process {package}" 2017-10-24 22:23:07.521 1832faad I Service2: onServiceConnected: package.Service1$Service1Binder@49655d47 java.lang.ClassCastException: package.Service1$Service1Binder не может быть приведен к package.Service1 $ Service1Binder
Я нашел много ответов о bindService в Activity, но не могу найти информацию о Service1 -> Service2. Как решить эту проблему?