安卓日历每日提醒_android 设置系统闹钟和系统日历提醒

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

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

日历提醒功能可以直接用 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);

}

设置系统闹钟需要 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值