手机闹钟服务 AlarmManager

本文介绍了Android中AlarmManager的基本用法,包括如何通过不同类型的定时设置启动Activity、BroadcastReceiver和服务。此外还列举了实际应用场景如设置闹钟和定时更换壁纸。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AlarmManager通常用于开发手机闹钟,但实际上它的作用不止于此。他本质是一个全局定时器,AlarmManager可以在指定时间或指定周期内启动其他组件(包含Activity,BroadcastReceviecer,Service)。


通过Context的getSystemService()方法来获取AlarmManager对象,一旦程序获得AlarmManager对象之后,就可以调用方法来设置定时启动指定组件。


1、void set(int type,long triggerAtTime,PendingIntent operation),第一个参数指定定时服务的类型,该参数可接受如下值:

ELAPSED_REALTIME:指定从现在开始过了一定时间后启动operation所对应的组件。

ELAPSED_REALTIME_WAKEUP:指定从现在开始一定时间后启动operation指定的组件,即使系统关机也会执行operation所对应的组件。

RTC:指定当系统调用System.currentTimeMillis()方法返回值与triggerAtTime相等时启动operation所对应的组件。

RTC_WAKEUP:当系统调用System.currentTimeMillis()方法返回值与triggerAtTime相等时启动operation所对应的组件,即使系统关机也会执行operation对应的组件。


2、void setInexactRepeating(int type,long triggerAtTime,long interval,PendingIntent operation):设置一个非精确的周期性任务,例如设置Alarm每小时启动一次,但系统并一定总在每个小时的开始启动Alarm服务。


3、void setRepeating(int type,long triggerAtTime,long interval,PendingIntent operation);设置一个周期性执行的定时服务。


4、void cancle(PendingIntent operation);取消AlarmManager的定时服务。


AlarmManager应用:

设置闹钟

定时更换壁纸


疯狂Android P408



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值