感謝大家的指導,終於想通了 Listener 也要宣告 aidl 的意義,
我一直想透過 aidl 把 Caller Pass 給 Service,還去實作 Parcelable..
後來看了十座的範例才想到,只要 pass Listener 就好了:
IServiceBinder.aidl
interface IServiceBinder {
void setListener(MyListener listener);
}
MyListener.aidl
interface MyListener {
void onButtonClick();
}
我之前一直想把 setListener 寫在 Service 中,原來應該要寫在 Binder 裡面..
感謝大家~