2013-02-07 1 views
1

gsm 네트워크상의 데이터 연결에 문제가 있습니다. 기기가 잠자기 상태 일 때 서버와 상호 작용할 수 없습니다. 모바일 네트워크가 꺼집니다. 디스플레이를 켜면 모바일 연결이 켜지고 요청이 자동으로 다시 전송됩니다.안드로이드 깨우기 모바일 연결/수면 후 데이터 수신

와이파이 모드에서는 무선 랜/모바일 데이터 연결을 위해 WifiLock을 사용하지만 이와 같은 접근 방식을 찾을 수 없습니다.

안부

+0

어떻게 서버와 통신? 서비스에서 통신이 일어나고 있습니까? 이 질문에 올바르게 대답하려면 살펴볼 코드가 필요합니다. –

+0

새 데이터를 확인하는 통신이 작동 중입니다. 새 데이터에 알림이 표시되는지 여부. – user1106234

답변

0

당신은 화면이 꺼져 동안의 CPU/라디오를 유지하는 WakeLock를 사용할 수 있습니다. 조심해서 사용하십시오.

0

AlarmManager를 사용하여 데이터 검사를 예약 할 수 있습니다. AlarmManager.RTC_WAKEUP 알람 유형을 설정하면 알람이 꺼질 때마다 (따라서 서비스가 시작될 때마다) 장치가 깨어납니다. 이렇게하면 필요한 데이터 연결을 얻을 수 있습니다.

Intent intent = new Intent(this, MyService.class); 
PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent, 0); 

AlarmManager alarm = (AlarmManager)getSystemService(Context.ALARM_SERVICE); 
// Start every 30 seconds 
alarm.setRepeating(AlarmManager.RTC_WAKEUP, Calendar.getInstance().getTimeInMillis(), 30*1000, pendingIntent); 

참조 :

관련 문제