Проблема с Сервисом, использующим AIDL? - PullRequest
0 голосов
/ 04 сентября 2011

Вот мой AIDL PlayerHandleService.aidl:

interface PlayerHandleService {
    void changeTextView();
}

oncreate () в моей деятельности: Player_Activity:

@Override
protected void onCreate(Bundle savedInstanceState) {
    this.bindService(new Intent(this,PlayerService.class), mConnection, Context.BIND_AUTO_CREATE);
}

Соединение:

private ServiceConnection mConnection = new ServiceConnection() {

    @Override
    public void onServiceDisconnected(ComponentName name) {
        // TODO Auto-generated method stub
        mpInterface=null;
    }

    @Override
    public void onServiceConnected(ComponentName name, IBinder service) {
        // TODO Auto-generated method stub
        mpInterface = PlayerHandleService.Stub.asInterface(service);
    }
};

Теперь в моей активности (Player_Activity) есть TextView, и я хочу использовать метод changeTextView () в AIDL, чтобы изменить содержимое этого TextView, как мне это сделать?

1 Ответ

0 голосов
/ 04 сентября 2011

Ты не. Ваша активность меняет свою TextView.

Если ваша служба хочет, чтобы действие выполняло какие-то действия, вы можете использовать какой-либо пользовательский прослушиватель или Intent, или Messenger, или createPendingResult(), или, возможно, другие методы.

...