我創建了一個應該重複運行並啓動服務的AlarmManager。我的問題是它只運行一次。我無法弄清楚什麼是錯的。現在我已經將AlarmManager的創建附加到按鈕上了。爲什麼我的AlarmManager setRepeating不重複?
這是MenuActivity類的一部分:
private void startUpdateService() {
Log.i(TAG, "Registering AlarmManager");
Intent service = new Intent(MenuActivity.this, UpdateService.class);
pendingIntent = PendingIntent.getService(MenuActivity.this, 0, service, 0);
AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 1000, 10*1000, pendingIntent);
}
@Override
public void onClick(View view) {
switch(view.getId()) {
case R.id.button_calendar:
Intent calendarIntent = new Intent(this, CalendarActivity.class);
if(Util.isOnline(this)){
startActivity(calendarIntent);
}else {
Toast.makeText(MenuActivity.this, R.string.toast_is_online, Toast.LENGTH_LONG).show();
}
break;
case R.id.button_settings:
startUpdateService();
Toast.makeText(MenuActivity.this, "Startet alarm", Toast.LENGTH_LONG).show();
break;
}
}
初始報警工作正常,但它不會重複。 任何知道我在做什麼錯的人?
我沒有意識到需要停止服務以便再次啓動。感謝您發佈您的調查結果。 =) – Aelexe