현재 두 개의 섹션으로 구성된 앱이 있으며 작업 부분은 작업 및 작업 완료 시간을 데이터베이스에 추가 한 다음 백그라운드에서 데이터베이스를 폴링하고 작업을 처리하는 서비스를 실행합니다 작업 완료 시간에 도달하면AlarmManager Advice가있는 Android 서비스
현재 내 서비스는 스레드를 확장하는 개인 내부 클래스를 사용하고 있으며 thread.sleep을 사용하여 작업 처리 메서드를 다시 실행하고 있습니다. 이 내부 클래스는 서비스 클래스의 onStartCommand()에서 호출됩니다. thread.sleep는 15 분으로 설정되거나 작업을 처리해야 할 때까지 잠자기 상태로 유지되어야합니다. 이 시점에서 모든 것이 올바르게 작동하지만 몇 가지 문제가 있습니다.
서비스가 절전 모드 일 때도 작업을 완료해야하는 시점에 따라 항상 변경되는 특정 시간에 실행해야합니다.
가능한 한 배터리에 거의 영향을주지 않아야합니다.
지금 연구를 통해 내가 지속적으로 특정 작업을했을 때를 기반으로 시간 간격을 변경하는 것이기 때문에 알람 매니저의 사용과 내가 그러나, 대단한 내가 필요에만이 서비스를 시작할 수 있다는 것을 발견 나는 이것이 올바른 행동의 과정이 될지 확신하지 못합니다.
나는 절대적으로 필요한 경우가 아니면 사용하고 싶지 않은 wakelocks에 대해서도 읽었습니다.
저는 앱에서 서비스를 구조화해야하는 방법과 이러한 작업을 처리하는 방법에 대한 조언을 찾고 있습니다.