현재 3g->wifi로 바뀌거나 wifi->3g로 바뀔경우
브로드캐스트 액션을 캐치하여
특정 서버로 파일을 전송하는 기능을 구현하였습니다.
파일전송하는 부분은 백그라운드에서도 가능하게,
서비스에서 쓰레드(파일전송부분)를 동작하게 구성하였습니다.
예)
onRecieve(Context context, Intent intent){
startService(....); 이런식으로.
....
}
서비스클래스{
파일전송 쓰레드 동작;
}
위와 같이 구성이 되어 있는데 문제가 있습니다.
인터넷 상태가 바뀔때 onRecive가 3번 호출 되더라구요.
그래서 서비스도 3번 동작을 해버려서요;;
아 이거 어찌해야될까요?
요점은
1. 브로드캐스트 리시버가 세번 호출된다.
2. 브로드캐스트의 중복 호출로 서비스 또한 중복 호출되게 된다.
3. 이 방법을 막을 좋은 수가 생각나지 않는다...