美文网首页日历
android 设置系统闹钟和系统日历提醒

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

作者: lesliefang | 来源:发表于2020-08-11 21:46 被阅读0次

现在有一个定时提醒的功能, 用 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 权限

<uses-permission android:name="com.android.alarm.permission.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

相关文章

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

    现在有一个定时提醒的功能, 用 AlarmManager 自己来做,有多少坑做过的都知道。(应用被kill, 应用...

  • android AlarmManager使用详解

    AlarmManager是android中系统自带的一个提醒服务,比如设置闹钟,做一个定时任务,还可以设置重复操作...

  • Android插入日历提醒

    Android插入日历提醒 本文用于说明Android日历功能 Android系统提供了插入日功能。第三方应用可以...

  • Android设置取消系统闹钟

    系统闹钟包名:com.android.deskclock 调用系统闹钟,首先在清单文件AndroidManifes...

  • 周二

    接入时间日历,方便用户安排时间分配,系统并在设置时刻提醒用户

  • Android实践 -- 设置系统日期时间和时区

    设置系统日期时间和时区 设置系统的日期时间和时区,需要 系统权限和系统签名,android:sharedUserI...

  • Android设置闹钟提醒

    最近在进行的备忘录项目需要用到定时提醒,用闹钟服务是再好不过了的选择,但是之前只是在看入门书籍的时候模模糊糊地抄了...

  • 自定义日历控件

    Android自定义日历控件(继承系统控件实现) 主要步骤 编写布局 继承LinearLayout设置子控件 设置...

  • Android系统启动流程和App启动流程

    一、Android系统架构 应用层:包括系统应用比如闹钟、日历等这些在内的以及非系统级别的应用都属于应用层。负责用...

  • Android系统APP之SettingsProvider

    Android系统APP之SettingsProvider 设置共享 系统设置 前言 SettingsProvid...

网友评论

    本文标题:android 设置系统闹钟和系统日历提醒

    本文链接:https://www.haomeiwen.com/subject/ingddktx.html