충전 케이블이 연결되어 있거나 화면이 켜져있는 경우에는 폰이 정상적으로 돌아가고 있는 때입니다.
케이블이 연결되지 않고, 화면이 꺼진지 약간의 시간이 지나면 폰은 sleep 상태에 들어가게 됩니다.
전력소모를 줄이기 위해서 대부분의 프로세스가 돌지 않는 것이지요. 물론 sleep이라고 해도 중간중간 잠시 깨어나서 지연된 작업을 처리해주긴 합니다만, 원하시는 것처럼 정확하게 시간이 맞지는 않습니다.
여기까지는 원인을 말씀드린거구요.
2번처럼 알람으로 일정시간마다 sleep모드를 깨우는 경우에는 당연히 sleep 모드를 유지하는 것보다 전력을 더 소모하게 됩니다. sleep을 유지하면서 동작을 하는 방법은 없고, 당연히 동작을 더 하니까 배터리는 더 소모하는 거지요.
다만, 얼마나 잦은 빈도로 sleep을 깨울건지, 깨워서 어떤 일을 시킬 것인가에 따라 배터리 소모 문제는 달라질 것 같습니다.
백그라운드로만 동작해야 한다면 2번이 일반적인 방법인 건 맞습니다.(포그라운드 서비스라면 1번도 일반적인 건 맞지만, 안된다고 하셔서 제외.)