배터리가 소모되는 것을 막기 위하여 idle 상태의 안드로이드 단말은 금방 sleep 상태로 변한다. 하지만 가끔 애플리케이션 작동을 위해 스크린이나 CPU를 어웨이크 상태로 유지해야하는 경우가 있다. 물론 이에 대한 접근법은 서비스의 특성에 따라 달라지겠지만 마구잡이로 어웨이크 상태로 만드는 것은 시스템 리소스에 부담을 줄 수 있다. 이에 리소스에 대한 영향을 최소화하기 위해 앱을 최적화하는 방법을 찾아야 하는 것은 당연한 일이다. 이번 장에서는 디바이스의 sleep과 awake의 상태변화가 앱의 요구사항을 만족시키며 리소스까지 관리 할 수 있도록하는 방법에 대해 설명한다.