2016-11-19 66 views
0

我正在編寫應用程序,我想每10秒向服務器發送一次信息。首先我使用Timer和TimerTask,但這不是一個好的選擇,因爲當我將這個設備截斷時,我的工作並不好。所以,現在我想用AlarmManager嘗試,但我有一個問題,當我想設置重複AlarmManager - 如何設置好重複

void startRepeatingSend() { 
    AlarmManager alarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE); 
    Intent intent = new Intent(context, MainReceiver.class); // odbiornik 
    intent.setAction("com.example.marcin.sbdintheroom.CYCLE"); 
    PendingIntent alarmIntent = PendingIntent.getBroadcast(context, 0, intent, 0); 
    alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, 5000, 5000, alarmIntent); 
} 

我設置intervalMillis 5秒,但我的接收器接收每分鐘

回答

0

您可以只播一次使用Thread.sleep(毫秒)延遲應用程序;

try { 
    Thread.sleep(1000);     //1000 milliseconds is one second. 
} catch(InterruptedException ex) { 
    Thread.currentThread().interrupt(); // interupt thread when error 
    // handle error 
}