2013-04-29 3 views
0

저는 활동에서 시작된 서비스를 개발 중입니다. 이 서비스는 오랜 작업 후에 작업에서 메서드를 호출해야하는 스레드를 시작합니다. 스레드의 활동에서 링크를 어떻게 전달할 수 있습니까?서비스에서 컨텍스트 얻기

+0

Android 서비스에 대한 연구에 노력을 기울여야합니다. –

답변

0

서비스를 시작하기 위해 간단하게 바인딩 할 수 있습니다. 묶여 있으면 활동에 바인더가 생기고 서비스에 콜백을 등록합니다. 스레드가 끝나면 콜백 메서드를 호출하여 작업을 수행합니다. 다른 단어에서

, bindService(intent, serviceConnection, Context.BIND_AUTO_CREATE)을 사용하고 serviceConnection 구현

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를 사용합니다.