문제

내 안드로이드 앱에서 a 서비스 백그라운드에서 실행되고 통나무가 있습니다 데이터베이스에 대한 GPS 판독 값. 사용자는 자신을 제시하는 활동을 봅니다 라디오 버튼. 현재 선택한 라디오 버튼을 데이터베이스에 기록하고 싶습니다.

서비스에서 라디오 버튼 객체에 어떻게 액세스 할 수 있습니까?

도움이 되었습니까?

해결책

이 작업을 수행하는 쉬운 방법 중 하나 (서비스가 활동과 동일한 프로세스에서 실행된다고 가정)는 공유 환경 설정 파일을 사용하는 것입니다. 활동은 라디오 버튼이 변경 될 때마다 환경 설정 파일에 쓸 수 있으며 서비스는 기본 설정에 리스너를 등록하거나 데이터베이스에 쓸 때마다 상태를 확인할 수 있습니다.

선호도를 피하는 더 복잡한 방법은 서비스가 컨텍스트로 시작되는 것입니다 .StartService () (활동이 주변에 있지 않은 경우에도 실행되는 상태로 유지되고 활동이 Context.BindService ()를 호출하는 것입니다. 실행되지 않는 경우 서비스) Ibinder 스텁을 반환하려면 통신 할 수 있습니다. 이 접근법을 위해 서비스 API 데모.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top