0

我正在开发一项从活动开始的服务。服务启动一个线程,经过长时间的工作后应该从活动中调用一个方法。如何将活动中的链接传递到线程?

4

1 回答 1

0

您可以简单地绑定到服务以启动它。当有界时,你会在你的活动中获得活页夹并在你的服务中注册一个回调。当您的线程完成时,您调用回调方法,该方法会上升到您的活动。

换句话说,使用bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE)并从 serviceConnection 实现中获取 binder

private static ServiceConnection mServiceConnection = new ServiceConnection() {

    @Override
    public void onServiceDisconnected(ComponentName name) {

    }

    @Override
    public void onServiceConnected(ComponentName name, IBinder service) {

        mBinder = (YourBinder) service;
        mBinder.registerCallback(yourCallbackImplementation);


    }
};

您使用 yourCallbackImplementation 从服务获取消息。

于 2013-04-29T15:58:25.827 回答