2012-11-17 35 views
0

我使用了一個AlarmManager,間隔爲5分鐘,並且我已經做了幾天的測試,看起來AlarmManager的時間間隔始終不是恆定的,但它會發生變化有些時候。這導致我的應用程序無法工作。Android AlarmManager間隔波動

這是怎麼發生的?有解決方案嗎?

我使用的代碼是:

iHeartBeatService = new Intent(SpyMe.context, HeartBeat.class); 
piHeartBeatService = PendingIntent.getService(SpyMe.context, 101010, iHeartBeatService, PendingIntent.FLAG_UPDATE_CURRENT); 
alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), 5 * 60 * 1000, piHeartBeatService); 

在三星Galaxy I5800 3採用Android 2.2

+2

發佈您用於創建鬧鐘的代碼。 – Squonk

+1

@Zosimas:即使你使用'RTC_WAKEUP',你的'alarm'也不會有固定的時間間隔。我也經歷過這個。我正在使用'三星Galaxy Ace'。我將間隔設置爲2分鐘,但實際間隔從2分鐘到2.5分鐘不等。 – Ashwin

+0

這更糟。我已經把它放到了3分鐘,有時它似乎超過5分鐘!如何使用非嚴重的操作系統進行認真的應用程序? – Zosimas

回答

0

您需要發佈您的代碼讓我們來幫助你。我要在黑暗中拍攝,並猜測你沒有使用RTC_WAKEUP來報警。

alarm.set(AlarmManager.RTC_WAKEUP, calander.getTimeInMillis(), pendingIntent);