首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Android通过AlarmManager类实现简单闹钟功能

AlarmManager提供了访问系统警报的服务,只要在程序中设置了警报服务,AlarmManager就会通过onReceive()方法去还行这些事件,就算系统处于待机状态,同样不会影响运行。...可以通过Context.getSystemService方法来获取该服务。接下来我们将使用AlarmManager来制作一个最简单的闹钟。...让我们来看一下AlarmManager都为我们提供了哪些方法,如下: ?...要实现闹钟,首先需要创建一个继承自BroadcastReceiver的类,实现onReceive方法来接收这个Alarm服务,然后通过建立Intent和PendingIntent连接来调用Alarm组件...(MainActivity.this, 0, intent, 0); // 获取闹钟管理的实例 AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE

1.9K30
您找到你想要的搜索结果了吗?
是的
没有找到

笔记58 | Android闹钟

调度重复的闹钟 闹钟(基于AlarmManager类)给予你一种在应用使用期之外执行与时间相关的操作的方法。你可以使用闹钟初始化一个长时间的操作,例如每天开启一次后台服务,下载当日的天气预报。...最佳实践方法 在设计重复闹钟过程中,你所做出的每一个决定都有可能影响到你的应用将会如何使用系统资源。例如,我们假想一个会服务器同步数据的应用。...setRepeating()方法。...要取消闹钟,可以调用AlarmManager的 cancel()方法,并把你不想激活的PendingIntent传递进去,例如: // If the alarm has been set, cancel...这意味着除非应用显式地启用它,不然该接收器将不被调用。这可以防止接收器被不必要地调用

1.6K30

Android:CoolWeather天气查看器

循环中不断地进行解析, * 如果当前的解析事件不等于XmlPullParser.END_DOCUMENT,说明解析工作还没完成, * 调用next()方法后可以获取下一个解析事件。...在while 循环中,我们通过getName()方法得到当前结点的名字, * 如果发现结点名等于id、name 或version,就调用nextText()方法来获取结点内具体的内容, * 每当解析完一个...之后这条消息会被添加到MessageQueue的队列中等待被处理,而Looper则会一直尝试MessageQueue中取出待处理消息,最后分发回Handler的handleMessage()方法中。...* 注意,在这个方法中是不可以进行UI 操作的, * 如果需要更新UI元素,可以调用publishProgress(Progress...) * publishProgress(Integer......publishProgress(Progress...)方法后,这个方法就会很快被调用, * 方法中携带的参数就是在后台任务中传递过来的。

1K20

android service实现循环定时提醒功能

manager.cancel(pi); } } AlarmReceiver代码: package bai.cslg.servicebestpractice; import android.content.BroadcastReceiver...android.content.Intent; /** * Created by baiqihui on 2016/9/21. */ public class AlarmReceiver extends BroadcastReceiver...Service代码中可以看出,onCreate()中完成对mediaPlayer的初始化(因为mediaPlayer只需要初始化一次),在onStartCommand()中开启一个新的线程,线程中通过...handler发送一条空的消息,并且在handler的handleMessage()方法中完成AlertDialog的创建以及播放闹铃,要注意这里创建的是一个全局的AlertDialog。...在onStartCommand()还执行了AlarmManager的初始化以及时间的设定,因为AlarmManager中第三个参数PendingIntent能够执行一个广播,所以还需要写一个广播接收者。

1.8K20

android 实现本地定时推送(兼容)

notifyByAlarmByReceiver无论是在广播还是在服务中,都可以调用这个进行立即通知 notifyByAlarm在activity中调用方法,将开启定时通知 notifyMsg这个是真正实现通知的方法...,但并不需要外部调用 服务或者广播类及其配置 服务和广播配置一个就可以了,目前我才有的是服务的配置方法 服务的写法 import android.app.Service; import android.content.Intent... 广播的写法 import android.content.BroadcastReceiver...import com.util.NotificationUtil; import java.io.IOException; public class AlarmReceiver extends BroadcastReceiver...,可以在MainActivity的OnCreate方法调用: long now = System.currentTimeMillis(); long interval[] = {0,10,60,3000,6000,12000,30000,50000,60000,100000

3.7K20

android 实现本地定时推送(兼容)

notifyByAlarmByReceiver无论是在广播还是在服务中,都可以调用这个进行立即通知 notifyByAlarm在activity中调用方法,将开启定时通知 notifyMsg这个是真正实现通知的方法...,但并不需要外部调用 服务或者广播类及其配置 服务和广播配置一个就可以了,目前我才有的是服务的配置方法 服务的写法 import android.app.Service; import android.content.Intent... 广播的写法 import android.content.BroadcastReceiver...import com.util.NotificationUtil; import java.io.IOException; public class AlarmReceiver extends BroadcastReceiver...,可以在MainActivity的OnCreate方法调用: long now = System.currentTimeMillis(); long interval[] = {0,10,60,3000,6000,12000,30000,50000,60000,100000

2.8K30

Android闹钟机制实现定时任务功能

Android的闹钟实现机制, 需要调用AlarmManager.set()将闹铃时间记录到系统中,当闹铃时间到后,系统会给应用程序发送广播,我们只需要去注册广播接收器就可以了。...本文分三部分讲解如何实现闹钟: 目录: 1. 设置闹铃时间; 2. 接收闹铃事件广播; 3. 重开机后重新计算并设置闹铃时间; 1....直到系统下次被唤醒才传递它,该闹铃所用的时间是相对时间,是系统启动后开始计时的,包括睡眠时间,可以通过调用SystemClock.elapsedRealtime()获得。...如果使用RTC_WAKEUP类型 应该调用System.currentTimeMillis()获取1970.1.1号以来的时间在加上你设定的延迟时间 alarmManager.set(AlarmManager.RTC_WAKEUP..., System.currentTimeMillis()+5000, sender); setRepeating方法有4个参数,这些参数的含义如下: type:表示警报类型,一般可以取的值是AlarmManager.RTC

3K30

Android中AlarmManager+Notification实现定时通知提醒功能

AlarmManager简介 AlarmManager实质是一个全局的定时器,是Android中常用的一种系统级别的提示服务,在指定时间或周期性启动其它组件(包括Activity,Service,BroadcastReceiver...本文将讲解一下如何使用AlarmManager实现定时提醒功能。...RTC:指定当系统调用System.currentTimeMillis()方法返回的值与triggerAtTime相等时启动operation所对应的设备(在指定的时刻,发送广播,但不唤醒设备)。...RTC_WAKEUP:指定当系统调用System.currentTimeMillis()方法返回的值与triggerAtTime相等时启动operation所对应的设备(在指定的时刻,发送广播,并唤醒设备...广播配置 新建闹钟BroadCastReceiver: public class AlarmReceiver extends BroadcastReceiver { private NotificationManager

5.9K32

Android开发笔记(五十二)通知推送Notification

PendingIntent 准备工作复习一下PendingIntent,前面的博文《Android开发笔记(五十)定时器AlarmManager》已经提到了它。...若调用方法,则setProgress的设置将失效 setProgress : 设置进度条与当前进度。...若调用方法,则setNumber的设置将失效 setContentIntent : 设置内容的PendingIntent,在点击该通知时触发Intent动作 setDeleteIntent : 设置删除的...在以上参数都设置完毕后,调用方法会返回Notification对象 NotificationManager Notification只是生成通知的内容,实际推送动作还需要借助于系统的通知服务来实现...调用方法后,状态栏和下拉列表中的指定通知将消失 cancelAll : 取消所有通知 下面是NotificationManager的调用代码例子: NotificationManager

2.2K20
领券