我正在为我的计时器使用 AlarmManager。我有2节课。
在第一堂课(MainActivity)中,我用下一个代码开始我的警报:
public void startAlarm(long Seconds) {
    Intent myIntent = new Intent(MainActivity.this, MyAlarmService.class);
    pendingIntent = PendingIntent.getService(MainActivity.this, 13141337,
            myIntent, 0);
    AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
    Calendar calendar = Calendar.getInstance();
    calendar.setTimeInMillis(System.currentTimeMillis());
    calendar.add(Calendar.SECOND, (int) Seconds);
    alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(),
            pendingIntent);
}
在另一个类(AlarmSound)中,闹钟响起并且手机振动,我正在调用我的取消闹钟方法。
public void stopAlarm(){
    Intent intentstop = new Intent(AlarmSound.this, MyAlarmService.class);
    PendingIntent senderstop = PendingIntent.getBroadcast(AlarmSound.this,
            13141337, intentstop, 0);
    AlarmManager myalarm = (AlarmManager) getSystemService(ALARM_SERVICE);
    myalarm.cancel(senderstop);
    Log.w("Karl","stopAlarm?");
}
这是正确的方法吗?因为我的闹钟在 android 4.1 上不断响起。
提前致谢!