android 闹钟设置的几种方法

android 闹钟

网上基本实现的是用AlarmManager
来说说AlarmManager吧

用它的好处是 在设定好提醒时间后 到点app会接收到触发广播
接收到广播事件后我们可以做一些处理
它的不好之处 如果不小心系统被回收了 或者点击了手机上的一键清理 你的app会被杀死再也接收到不任何广播 即使是你静态注册的广播 好像在安卓4.4后 手机都自带一键清理功能 而且我也特别喜欢用点击一键清理 感觉这样省电。

下面说说另外一种添加方法吧
我就直接给出代码

Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.SECOND,10);
//setAlarm(calendar);
Intent alarmIntent = new Intent(AlarmClock.ACTION_SET_ALARM);
alarmIntent.putExtra(AlarmClock.EXTRA_MESSAGE, "提醒消息 下午去XXX开会");
alarmIntent.putExtra(AlarmClock.EXTRA_HOUR, calendar.get(Calendar.HOUR_OF_DAY));
alarmIntent.putExtra(AlarmClock.EXTRA_MINUTES, calendar.get(Calendar.MINUTE) + 1);
alarmIntent.putExtra(AlarmClock.EXTRA_SKIP_UI, true);
alarmIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(alarmIntent);

说说他的好处吧 用这种方法添加的闹钟提醒 是系统闹钟 不依赖于app 即使是你的app被杀死了
缺点是 app不能接受到触发广播(我没有测试只是我的个人猜想 因为我不关心 我的需求只是做到备忘录的功能)

还有你也可以选择跳转到系统闹钟设置界面 让用户自己设置

Intent alarmas = new Intent(AlarmClock.ACTION_SET_ALARM);
startActivity(alarmas);

你可能感兴趣的:(android 闹钟设置的几种方法)