2011-09-30 2 views
1

응답을 기다려야하는 로컬 서비스가 있으며 응답을 받으면 즉시 해당 정보로 활동을 업데이트합니다. 따라서 활동은 서비스 메소드를 폴링하지 않지만 로컬 서비스가 일부 데이터를 얻는 순간 즉시 그 활동을 어떻게 든 알립니다.Android 로컬 서비스에서 활동까지 실시간 데이터를 스택에 전달하는 방법은 무엇입니까?

So Activity - binds -> LocalService < ------> (RemoteService 별도 프로세스). 그래서 나는 그것을 의도적으로 포장하여 활동에 전달할 수 있다는 것을 알고 있습니다. 그러나 그것은 최선의 선택입니다. 어떻게하면 로컬 서비스에서 스택을 호출하여 로컬 서비스를 호출하는 활동으로 전달할 수 있습니까? 로컬 서비스는 백그라운드에서 영원히 실행되며 주기적으로 실시간 데이터를 로컬 서비스에 보내는 원격 별도의 프로세스 서비스에 이미 바인딩되어 있습니다. 감사합니다

+0

빌드 ContentProvider ContentObserver를 확장하고 ContentResolver.notifyChange를 사용하여 ContentObserver에 데이터가 변경되었음을 알립니다. – Selvin

답변

1

당신은 setter()을 통해 서비스에 대한 활동의 ​​개체를 handler 전달할 수 있으며이 개체를 사용하여 활동의 변경 사항을 업데이트 할 수 있습니다.

+0

명확히하십시오. ? .set – Androider

+0

getter() - 값을 설정하고 가져 오는 데 사용하는 setter()입니다. –

+0

확인. 그래서 활동 내에서 서비스 내부의 참조를 유지할 것을 제안합니까? 그게 좋은 생각이야? – Androider

관련 문제