android 设置系统闹钟和系统日历提醒

您所在的位置:网站首页 安卓手机怎么设置提醒功能 android 设置系统闹钟和系统日历提醒

android 设置系统闹钟和系统日历提醒

#android 设置系统闹钟和系统日历提醒| 来源: 网络整理| 查看: 265

现在有一个定时提醒的功能, 用 AlarmManager 自己来做,有多少坑做过的都知道。(应用被kill, 应用保活,息屏,关机重启,多版本兼容问题。。。)。要自己做一个完善的不是 1-2天就能搞定的。当然如果是应用内简单的定时执行,定时提醒 AlarmManager 还是很好用的。

https://www.jianshu.com/p/1f919c6eeff6

对于这种需求可以调用系统闹钟或用系统日历的提醒事件来做。

日历提醒功能可以直接用 Intent 起日历提醒界面,这样最简单,不需要权限。

private void OpenCalendar() { Calendar beginTime = Calendar.getInstance();//开始时间 beginTime.clear(); beginTime.set(2014,0,1,12,0);//2014年1月1日12点0分(注意:月份0-11,24小时制) Calendar endTime = Calendar.getInstance();//结束时间 endTime.clear(); endTime.set(2014,1,1,13,30);//2014年2月1日13点30分(注意:月份0-11,24小时制) Intent intent = new Intent(Intent.ACTION_INSERT) .setData(Uri.parse("content://com.android.calendar/events")) .putExtra("beginTime", beginTime.getTimeInMillis()) .putExtra("endTime", endTime.getTimeInMillis()) .putExtra("title", "标题") .putExtra("description", "地点"); startActivity(intent); }

调用API 直接设置需要动态申请权限 https://www.cnblogs.com/loaderman/p/10489592.html

https://developer.android.com/guide/topics/providers/calendar-provider

设置系统闹钟需要 SET_ALARM 权限

Date date = sf.parse(sDate + sTime); Intent intent = new Intent(AlarmClock.ACTION_SET_ALARM); intent.putExtra(AlarmClock.EXTRA_HOUR, 11); intent.putExtra(AlarmClock.EXTRA_MINUTES, 59); intent.putExtra(AlarmClock.EXTRA_MESSAGE, "hello world"); intent.putExtra(AlarmClock.EXTRA_VIBRATE, true); intent.putExtra(AlarmClock.EXTRA_SKIP_UI, true); if (intent.resolveActivity(getPackageManager()) != null) { startActivity(intent); }

取消闹钟用 AlarmClock.ACTION_DISMISS_ALARM



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3