google推荐方式3种:

一、AlarmManager

setRepeating() 重复闹钟。1、Android 4.4(API 级别 19)开始,所有重复闹钟都是不精确的,延时2分钟左右。2、闹钟触发的待定 Intent。当您设置使用同一待定 Intent 的第二个闹钟时,它会替换原始闹钟。3、当设备在低电耗模式下处于空闲状态时,不会触发闹钟。所有已设置的闹钟都会推迟,直到设备退出低电耗模式。

setInexactRepeating() 重复闹钟,同setRepeating()。特点:Android 会同步来自多个应用的重复闹钟,并同时触发它们。这可以减少系统必须唤醒设备的总次数,从而减少耗电量。

setAndAllowWhileIdle() 或 setExactAndAllowWhileIdle() 即使设备处于空闲状态您的工作也会完成

注意事项:

1、如需取消 PendingIntent,请将 FLAG_NO_CREATE 传递到 PendingIntent.getService(),以获取该 Intent 的实例(如果存在),然后将该 Intent 传递到 AlarmManager.cancel()

2、默认情况下,当设备关机时,所有闹钟都会被取消。为了防止出现这种情况,您可以将应用设计为在用户重启设备时自动重新启动重复闹钟。

配置清单

    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
<receiver android:name=".SampleBootReceiver"android:enabled="false"><intent-filter><action android:name="android.intent.action.BOOT_COMPLETED"></action></intent-filter></receiver>

3、在 Android 6.0(API 级别 23)中引入了低电耗模式和应用待机模式。低电耗模式下使用 setAndAllowWhileIdle() 或 setExactAndAllowWhileIdle() 让某个闹钟在低电耗模式下也能触发。

应用将在处于空闲状态时(即用户在一段时间内未使用应用,并且应用没有前台进程时)进入应用待机模式。当应用处于应用待机模式时,闹钟会像设备处于低电耗模式一样被延迟。当应用不再处于空闲状态或者当设备接通电源时,该限制便会解除。

二、使用FCM(Firebase Cloud Messaging)

使用跨平台定点消息推送实现消息提醒,向单台设备发送消息

官方文档:https://firebase.google.com/docs/cloud-messaging/?hl=zh-cn

三、WorkManager

凡是不直接与用户互动相关且日后可随时运行的任务,都可以延期执行。异步任务即使在应用退出或设备重启后仍能正常运行

Android自定义闹钟相关推荐

  1. Android5.0自定义闹钟,Android自定义闹钟功能

    Android闹钟alarmManager+PendingIntent的使用方法,供大家参考,具体内容如下 这次给大家分享两种闹钟: 第一种是当到达闹钟时间后执行一次相应的操作 alarmManage ...

  2. android自定义闹钟铃声,如何在android中设置自定义闹钟铃声

    试试这个 添加任何.MP3文件中的原始文件夹位置该文件的名称 public void setAlarm() { File file = new File(Environment.getExternal ...

  3. Android自定义定时闹钟开发详解

    这篇文章主要为大家详细介绍了Android自定义定时闹钟开发,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本文实例为大家分享了Android开发之自定义闹钟实现,供大 ...

  4. android如何实现每周自定义闹钟,Android中使用alarmManager+PendingIntent实现自定义闹钟...

    Android中使用alarmManager+PendingIntent实现自定义闹钟 发布时间:2020-11-24 15:36:41 来源:亿速云 阅读:154 作者:Leah 今天就跟大家聊聊有 ...

  5. Android5.0自定义闹钟,Android自定义View 实现闹钟唤起播放闹钟铃声功能

    先上图看一下闹钟唤期页面的效果 实现的功能: 1:转动的图片根据天气情况更换 2:转动时间可以设置,转动结束,闹铃声音就结束 3:光圈颜色渐变效果 直接上代码啦: package com.yuekon ...

  6. Android自定义View绘制闹钟

    Android自定义View绘制闹钟 本文简单实现了一个闹钟,扩展View,Canvas绘制 效果如下: 代码如下: package com.gaofeng.mobile.clock_demo;imp ...

  7. 基于Android的闹钟的软件

    一.本课题要求:设计一个基于Android的闹钟的软件. 实现的功能有:能通过界面设置闹钟的启动条件建立后台服务进程,当满足触发条件时,闹钟响应相应事件. 二.需求分析 该课题实现在手机操作系统And ...

  8. 基于android系统的闹钟,基于Android的闹钟的软件

    一.本课题要求:设计一个基于Android的闹钟的软件. 实现的功能有:能通过界面设置闹钟的启动条件建立后台服务进程,当满足触发条件时,闹钟响应相应事件. 二.需求分析 该课题实现在手机操作系统And ...

  9. Android:闹钟提醒结合通知(alarm+notification)

    Android的Notification是android系统中很重要的一个机制, 产品人员常常利用通知栏的方式,跟用户进行弱沟通.拥有推送通知的app要比没有此类功能的app活跃率要高很多.另外类似于 ...

最新文章

  1. day3----编码-集合-深浅copy-文件操作-函数初识
  2. SVN linux 服务器端配置
  3. 2.11 linux的软防火墙apf安装配置
  4. Word文档转html并提取标题
  5. STM32 基础系列教程 1- CubeMX+GPIO
  6. java awt table_java.awt.image 类 LookupTable - Java 中文参考手册
  7. 2016 10 26考试 NOIP模拟赛 杂题
  8. 季节性时间序列数据分析_如何指导时间序列数据的探索性数据分析
  9. [设计模式] ------ 单例模式
  10. 请教 这段代码有问题吗
  11. 学习日记16、easyui editor datagrid 动态绑定url
  12. Atitit 多线程 什么时候使用多进程的选择场景 目录 1.1. 看实现,比如你的用node.js实现,那就没得选了,只能多进程 1 1.2. 如果用java这一类,可以选择多进程与多线程模式,或
  13. JSON时间转换格式化
  14. flash电脑安装包_flash控件下载特色众多flash控件下载使用评估
  15. 为什么要从 Microsoft Store 下载 Visual Studio/VS Code?
  16. 软件项目管理(SPM)课程总结及感想
  17. C# :弧度角度转换
  18. android崩溃日志 2016,常用获取Android崩溃日志的几种方法
  19. ARM嵌入式体系结构与接口技术
  20. Centos下rarcrack破解压缩包密码

热门文章

  1. CAS流程简析 服务端校验Ticket
  2. T2483 电梯(模拟题)
  3. 植物的生长与模拟之一:概述
  4. 植物的地上地下竞争模型--一次纸上实验
  5. 高等数学在计算机的应用论文,高等数学论文-计算机软件和应用.doc
  6. 一款接口自动化神器—开源接口测试平台Lim(Less is More)
  7. qq2009破解流程[图]
  8. linux 内存耗尽 无法登录,Linux内存耗尽原因分析(2)
  9. 学python处理数据结构_从零开始学Python - 第009课:常用数据结构之字符串
  10. C语言程序练习:波瓦松的分酒趣题。法国著名数学家波瓦松青年时代研究过一个有趣的数学问题:某人有12品脱的啤酒一瓶,想从中倒出6品脱,但他没有6品脱的容器,仅有一个8品脱和一个5品脱的容器,怎样倒才