设为首页 加入收藏

TOP

观摩Android系统源码 +闹钟-1
2014-11-24 12:35:31 来源: 作者: 【 】 浏览:0
Tags:观摩 Android 系统 源码 闹钟

在此让我们来一起研究这个Android自带的闹钟程序是怎么一个实现过程吧!


首先让我们来看看整个闹钟的设置和运行过程,这有助于我们找到研究的出发点。





1.闹钟列表





2.闹钟设置




好的,我们可以看出这个闹钟程序主要是由这两个Activity组成(当然还包含响玲弹出框),它们分别对应闹钟项目源码中的AlarmClock.java和SettingsActivity.java




AlarmClock.java定义如下(部分代码):


@Override



在onCreate()函数中主要看


mCursor = Alarms.getAlarmsCursor(getContentResolver());


从这句我们就可以看出启动后所看到的闹钟列表是有ContentProvider中遍历所有闹钟而形成,后面自然有形成这个列表的方法。


其中这里用的了Alarms这个类。下面列出了这个类中定义的所有方法(粗体为重要方法):


addAlarm 添加闹钟方法


deleteAlarm 删除闹钟方法


getAlarmsCursor 获取ContentProvider中的所有闹钟对象,返回相应的游标句柄


getFilteredAlarmsCursor 获取ContentProvider中所有开启的闹钟对象


getAlarm 根据某一闹钟ID获取相应的闹钟对象


setAlarm 设置闹钟方法


enableAlarm 对闹钟的使能操作


calculateNextAlert 计算下一个闹钟响起的时间


disableExpiredAlarms 关闭所有过时闹钟


setNextAlert 设置下一闹钟响起时间


enableAlert 系统定时提醒操作


disableAlert撤销定时闹钟操作


calculateAlarm 根据时分计算闹钟响起时间




可以看出Alarms类主要封装了对闹钟对象的所有操作,是整个闹钟程序的控制逻辑。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Android 怎么旋转TextView文字显.. 下一篇Android服务Service----实现电话..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·MySQL 安装及连接-腾 (2025-12-25 06:20:28)
·MySQL的下载、安装、 (2025-12-25 06:20:26)
·MySQL 中文网:探索 (2025-12-25 06:20:23)
·Shell脚本:Linux Sh (2025-12-25 05:50:11)
·VMware虚拟机安装Lin (2025-12-25 05:50:08)