【问题标题】:Android Alarm is not working after updating time更新时间后Android闹钟不起作用
【发布时间】:2018-03-20 02:36:19
【问题描述】:

我设置了重复闹铃,效果很好,但是当我更新时间时闹铃不起作用。我在未决意图中使用相同的代码和标志,但从不同的活动创建和更新。在日志中它说警报在特定时间触发但它不起作用。谁能说说是什么问题?

从插入活动中调用警报:

  startAlarm(Insert.this, pillName, timeInMilis, code);

从编辑活动中调用警报:

startAlarm(Edit.this, pillName, timeInMilis, code);

创建和更新警报的功能:

public void startAlarm(Context context, String pillName, long time, int code) {
    Intent aIntent = new Intent(context, AlarmReceiver.class);
    aIntent.putExtra("pillName", pillName);
    aIntent.putExtra("code", code);
    PendingIntent pIntent = PendingIntent.getBroadcast(context, code, aIntent, PendingIntent.FLAG_UPDATE_CURRENT);
    AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
    alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, time,60000, pIntent);
}

广播接收器类:

public void onReceive(Context context, Intent intent) {
    String pillName=intent.getExtras().getString("pillName");
    MediaPlayer mediaPlayer=MediaPlayer.create(context, Settings.System.DEFAULT_NOTIFICATION_URI);
    mediaPlayer.start();
    Toast.makeText(context,"Testing Alarm::"+pillName,Toast.LENGTH_SHORT).show();

}

【问题讨论】:

  • 当您在停止 AlarmManager 挂起意图之前启动。它可能运作良好。请检查一下
  • 谢谢,反正我的问题解决了。

标签: android android-intent broadcastreceiver task alarm


【解决方案1】:

当您在停止 AlarmManager 挂起意图之前启动时。它可能运作良好

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-29
    • 1970-01-01
    相关资源
    最近更新 更多