1. Action定义:

public static final String ALARM_SNOOZE_ACTION = "com.android.deskclock.ALARM_SNOOZE";public static final String ALARM_DISMISS_ACTION = "com.android.deskclock.ALARM_DISMISS";public static final String ALARM_DONE_ACTION = "com.android.deskclock.ALARM_DONE";public static final String ALARM_ALERT_ACTION = "com.android.deskclock.ALARM_ALERT";

2.注册闹钟广播:

private void registerAlarm() {IntentFilter filter = new IntentFilter();filter.addAction("com.android.deskclock.ALARM_ALERT");filter.addAction("com.android.deskclock.ALARM_DONE");filter.addAction("com.android.deskclock.ALARM_DISMISS");filter.addAction("com.android.deskclock.ALARM_SNOOZE");registerReceiver(mReceiver, filter);}private BroadcastReceiver mReceiver = new BroadcastReceiver() {@Overridepublic void onReceive(Context context, Intent intent) {String action = intent.getAction();Log.i("Tag", "AlarmActivity - Broadcast Receiver - " + action);if (action.equals(ALARM_SNOOZE_ACTION)) {// snooze();} else if (action.equals(ALARM_DISMISS_ACTION)) {// dismiss();} else if (action.equals("com.android.deskclock.ALARM_ALERT")) {new Thread(waitStopAlarm).start();} else {Log.i("Tag", "Unknown broadcast in AlarmActivity: " + action);}}};

private Runnable waitStopAlarm = new Runnable() {@Overridepublic void run() {// TODO Auto-generated method stubtry {Thread.sleep(2000);} catch (Exception e) {// TODO: handle exception}stopAlarm();}};private void stopAlarm() {Log.i("Tag", "stop alarm");Intent intent = new Intent();intent.setAction("com.android.deskclock.ALARM_DISMISS");sendBroadcast(intent);}private void snoozeAlarm() {Intent intent = new Intent();intent.setAction("com.android.deskclock.ALARM_SNOOZE");sendBroadcast(intent);}

3.新增加闹钟:

Intent intent = new Intent(AlarmClock.ACTION_SET_ALARM);intent.putExtra(AlarmClock.EXTRA_MESSAGE, "New Alarm!");intent.putExtra(AlarmClock.EXTRA_HOUR, hour);intent.putExtra(AlarmClock.EXTRA_MINUTES, minutes);intent.putExtra(AlarmClock.EXTRA_SKIP_UI, true);startActivity(intent);

4.权限:

<uses-permission android:name="com.android.alarm.permission.SET_ALARM" />

详细信息请移步:http://blog.csdn.net/yihongyuelan

更多相关文章

  1. Android 使用AlarmManager设置闹钟
  2. android闹钟(三):实现时钟功能
  3. android 闹钟提醒并且在锁屏下弹出Dialog对话框并播放铃声和震动
  4. android闹钟(四):实现计时器
  5. 直播代码Android怎么实现定时任务及闹钟?
  6. Android 8.0 设置默认闹钟提示音或者默认通知提示音
  7. Android 闹钟管理类的使用
  8. Android简易闹钟实现
  9. Android 获取闹钟引发的血案

随机推荐

  1. Dialog对话框(此5种)
  2. Android(安卓)面试题之系统相关
  3. Ubuntu下Genymotion模拟器启动卡死
  4. Android(安卓)Material Design之CardView
  5. listview Recycleview中imageview图片显
  6. Android十八章:Android(安卓)Studio打包ja
  7. Android(安卓)通过高德地图获取地址的经
  8. Android(安卓)Studio导入第三方类库、jar
  9. Android开发工程师个人简历
  10. Android(安卓)ListView组件详解及示例代