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. Как решить эту проблему?

0 ответов

Другие вопросы по тегам