我在gsm网络上遇到数据连接问题。 当设备睡眠无法与服务器交互时.Seems移动网络关闭。当打开显示器时,移动连接会自动再次发送请求。
在wifi模式下,我使用WifiLock但是找不到这样的移动无线电/移动数据连接方法。
此致
答案 0 :(得分:1)
您可以使用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);
请参阅:
答案 1 :(得分:0)
您可以使用WakeLock在屏幕关闭时保持CPU /无线电。 小心使用。