Android自定义闹钟功能
发布时间 - 2026-01-10 23:15:12 点击率:次Android闹钟alarmManager+PendingIntent的使用方法,供大家参考,具体内容如下

这次给大家分享两种闹钟:
第一种是当到达闹钟时间后执行一次相应的操作
alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent);
第二种是当到达闹钟时间后每隔一段时间执行操作
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),5000, pendingIntent);
下面看效果图:
设置两种闹钟
选择闹钟时间
闹钟一到打开一个界面
下面看代码:
public class Alarm2Activity extends AppCompatActivity {
private AlarmManager alarmManager;
private PendingIntent pendingIntent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_alarm2);
//实例化闹钟个管理器
alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
}
//设置闹钟(只响一次)
public void startAlarmOne(View view){
//获取当前系统的时间
Calendar calendar=Calendar.getInstance();
int hour=calendar.get(Calendar.HOUR_OF_DAY);
int minute=calendar.get(Calendar.MINUTE);
//弹出时间对话框(选择时间)
TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int i, int i1) {
//获取当前系统的时间
Calendar c=Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY,i);
c.set(Calendar.MINUTE,i1);
//打开一个Activity
Intent intent=new Intent();
intent.setAction("com.example.myandroid_27.ALARM");
PendingIntent pendingIntent= PendingIntent.getBroadcast(Alarm2Activity.this,0x101,intent,0);
//设置闹钟
alarmManager.set(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),pendingIntent);
}
},hour,minute,true);
timePickerDialog.show();
}
//设置闹钟(在多长时间后闹钟响然后继续计时)
public void startAlarmTwo(View view){
//获取当前系统的时间
Calendar calendar=Calendar.getInstance();
int h=calendar.get(Calendar.HOUR_OF_DAY);
int m=calendar.get(Calendar.MINUTE);
//弹出时间对话框(选择时间)
TimePickerDialog timePickerDialog=new TimePickerDialog(this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int i, int i1) {
//获取选择的闹钟时间
Calendar c=Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY,i);
c.set(Calendar.MINUTE,i1);
//打开一个Activity
Intent intent=new Intent();
intent.setAction("com.example.myandroid_27.ALARM");
pendingIntent = PendingIntent.getBroadcast(Alarm2Activity.this,0x102,intent,0);
//闹钟什么时候继续执行
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP,c.getTimeInMillis(),5000, pendingIntent);
}
},h,m,true);
timePickerDialog.show();
}
//关闭周期闹钟
public void startAlarmThree(View view){
alarmManager.cancel(pendingIntent);
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Android
# 闹钟
# Android闹钟启动时间设置无效问题的解决方法
# Android编程使用AlarmManager设置闹钟的方法
# Android编程实现闹钟的方法详解
# Android实现闹钟功能小Dome
# Android 使用AlarmManager和NotificationManager来实现闹钟和通知
# android 设置闹钟及通知示例
# Android自定义View 实现闹钟唤起播放闹钟铃声功能
# Android编程闹钟设置方法详解
# Android闹钟设置的解决方案
# Android设置闹钟相对完善的解决方案
# 两种
# 弹出
# 对话框
# 什么时候
# 给大家
# 管理器
# 一到
# 每隔
# 第二种
# 多长时间
# 第一种
# 具体内容
# 大家多多
# brush
# java
# class
# pre
# center
# protected
# Override
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何快速上传建站程序避免常见错误?
如何将凡科建站内容保存为本地文件?
个人摄影网站制作流程,摄影爱好者都去什么网站?
Laravel如何实现文件上传和存储?(本地与S3配置)
为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
个人网站制作流程图片大全,个人网站如何注销?
高防服务器租用指南:配置选择与快速部署攻略
Linux安全能力提升路径_长期防护思维说明【指导】
Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议
如何在云主机上快速搭建多站点网站?
黑客入侵网站服务器的常见手法有哪些?
香港服务器租用每月最低只需15元?
中国移动官方网站首页入口 中国移动官网网页登录
如何快速选择适合个人网站的云服务器配置?
Laravel如何实现用户角色和权限系统_Laravel角色权限管理机制
Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能
音响网站制作视频教程,隆霸音响官方网站?
linux top下的 minerd 木马清除方法
Laravel项目结构怎么组织_大型Laravel应用的最佳目录结构实践
浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】
js实现点击每个li节点,都弹出其文本值及修改
Laravel怎么使用Intervention Image库处理图片上传和缩放
Laravel如何处理表单验证?(Requests代码示例)
HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】
如何在阿里云通过域名搭建网站?
详解阿里云nginx服务器多站点的配置
微信小程序 scroll-view组件实现列表页实例代码
浅谈redis在项目中的应用
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
微信小程序制作网站有哪些,微信小程序需要做网站吗?
在线制作视频网站免费,都有哪些好的动漫网站?
php在windows下怎么调试_phpwindows环境调试操作说明【操作】
laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法
Laravel如何实现邮件验证激活账户_Laravel内置MustVerifyEmail接口配置【步骤】
如何用PHP快速搭建CMS系统?
如何快速搭建高效简练网站?
Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法
如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环
,在苏州找工作,上哪个网站比较好?
Laravel如何使用Contracts(契约)进行编程_Laravel契约接口与依赖反转
网站建设要注意的标准 促进网站用户好感度!
JavaScript如何操作视频_媒体API怎么控制播放
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
Laravel怎么配置.env环境变量_Laravel生产环境敏感数据保护与读取【方法】
悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音
如何利用DOS批处理实现定时关机操作详解
英语简历制作免费网站推荐,如何将简历翻译成英文?

