【发布时间】:2015-10-30 10:00:42
【问题描述】:
我尝试每 5 分钟发出一次警报,但在将 triggerAtMillis 参数设置为我当前的系统时间时,我的经理没有发出任何警报。知道如何解决这个问题吗?
manager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
Intent alarmIntent = new Intent(this, AlarmReceiver.class);
pendingIntent = PendingIntent.getBroadcast(this, 0, alarmIntent, PendingIntent.FLAG_UPDATE_CURRENT);
int alarmType = AlarmManager.ELAPSED_REALTIME_WAKEUP;
long intervalTime = 5*60*1000;
manager.setRepeating(alarmType, System.currentTimeMillis(),intervalTime,pendingIntent);
这是我启动闹钟时的代码。因此,当我将 triggerAtmillis 设置为 triggerTime 时,它确实会触发,但并非每 5 分钟一次。
public class AlarmReceiver extends BroadcastReceiver {
Context context = null;
@Override
public void onReceive(Context arg0, Intent arg1) {
context = arg0;
System.out.println("test");
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(context)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle("test")
.setContentText("test");
Intent resultIntent = new Intent(context, MainActivity.class);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);
stackBuilder.addParentStack(MainActivity.class);
stackBuilder.addNextIntent(resultIntent);
PendingIntent resultPendingIntent =
stackBuilder.getPendingIntent(
0,
PendingIntent.FLAG_UPDATE_CURRENT
);
mBuilder.setContentIntent(resultPendingIntent);
mBuilder.setDefaults(Notification.DEFAULT_SOUND | Notification.DEFAULT_LIGHTS | Notification.DEFAULT_VIBRATE);
NotificationManager mNotificationManager =
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
mNotificationManager.notify(1, mBuilder.build());
}
我的接收器类
【问题讨论】:
标签: android triggers notifications alarmmanager repeatingalarm