2012-05-14 2 views
2

기본 작업에서 백그라운드 작업을 수행하는 데 사용하는 서비스가 있으며 바인딩 및 바인딩 해제를 사용하여 시작되었습니다.Android : 서비스 startService 또는 Bind 서비스

이렇게하면 활동이 서비스 시작을 시작하고 활동 호출이 바인딩 해제 될 때 중지하면이 기능이 잘 작동합니다.

이제 CheckBoxpreference를 사용하면 서비스가 시작되고 주 활동이 종료 되더라도 백그라운드에서 실행해야합니다.

이 결과를 얻는 가장 좋은 방법은 무엇입니까? 환경 설정에서 startservice/stopservice에 대해 작업해야합니까, 아니면 환경 설정이 true 일 때 주 활동에서 바인딩 해제하지 않아야합니까?

기본 활동의 바인딩에서 이미 시작할 때 환경 설정에서 서비스를 시작하면 동일한 서비스의 여러 인스턴스가됩니까?

답변

2

체크 박스가 선택되지 않은 (또는 그 반대로) 선택에서 변경 될 때 OnSharedPreferenceChangeListener 그래서 업데이트를 얻을 것이다 사용하여 감사드립니다.

start/stopService 메커니즘과 바인드/바인드 해제 메커니즘을 동시에 사용할 수 있습니다. startService가 호출되거나 서비스가 바인드되면 서비스가 시작되고 stopService가 호출되고 더 이상 활동이 바인드되지 않으면 서비스가 중지됩니다.

나는 이미 시작한 서비스와 관련하여 this post이 귀하의 질문에 답변 할 것이라고 생각합니다.

관련 문제