그건 안드로이드 실지 기기에서는 안드로이드 시스템이 불필요한 서비스라고 생각되는 경우 강제로 서비스를 죽여버리기때문입니다.
그래서 저 같은 경우는 안드로이드 alarmmanager를 이용해서 리시버를 등록해놓고 일정시간간격(예; 20초정도)으로 리시버를 호출하도록 해주었고요, 리시버에서는 서비스를 체크해서 다시 시작하는 부분을 넣었습니다.
이렇게 하면 영원히 죽지 않는 서비스를 구현할수가 있습니다. 물론 기껏 20초 정도는 죽겠지만.. ㅎㅎ
구글에 alarmmanager와 setrepeating 함수로 검색하시면 될겁니다. 도움이 되셨길...