1
我写的代码在我的MainActivity的重复报警,每当我开始我的应用程序重复报警我everytime.But希望它每隔24小时后重复重复报警每一天
MainActivity.java
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_home);
sessionManager = new SessionManager(this);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
toolbar.setBackgroundColor(getResources().getColor(R.color.black));
setSupportActionBar(toolbar);
repeatAlarm();
}
private void repeatAlarm() {
Date when = new Date(System.currentTimeMillis());
try {
Intent someIntent = new Intent(getApplicationContext(), MyReciever.class); // intent to be launched
// note this could be getActivity if you want to launch an activity
PendingIntent pendingIntent = PendingIntent.getBroadcast(getApplicationContext(), 0, // id, optional
someIntent, // intent to launch
PendingIntent.FLAG_CANCEL_CURRENT); // PendintIntent flag
AlarmManager alarms = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, when.getTime(), AlarmManager.INTERVAL_DAY, pendingIntent);
} catch (Exception e) {
e.printStackTrace();
}
}
这就像您编写代码一样工作。你应该检查你是否设置了警报,然后不要再设置警报。而且我可以看到给予小时的间隔时间,而不是到达天。 –
除了重新启动后还需要考虑设置闹钟。也打扰限制https://developer.android.com/training/monitoring-device-state/doze-standby.html – Raghunandan