一、本课题要求:设计一个基于Android的闹钟的软件。
实现的功能有:能通过界面设置闹钟的启动条件建立后台服务进程,当满足触发条件时,闹钟响应相应事件。
二、需求分析
该课题实现在手机 *** 作系统Android闹钟提醒功能,携带方便,使用起来灵活、快捷、省心,是一款实用的手机软件。“手机闹钟”可以在后台运行,且能和普通闹钟一样设置多个位置闹铃,有良好的人机交互界面,可对其编辑、启用或禁用,关键在于可以自定义设置取消闹钟的 *** 作。
(1)系统体系结构包括:添加闹铃、设置时间、重复等,闹铃提醒方式,返回首页。
(2)用户界面设计
主页面
取消闹铃页面
三、代码设计
(1)
mainxml代码
解除闹铃代码
(2)代码分析
开发手机闹钟主要用到了AlarmManager类,AlarmManager类提供了访问系统定时服务的途径,开发人员可以在程序中设置某个应用程序在未来的某个时刻被执行。当AlarmManager定时时间到了之后,当初注册的Intent对象将会被系统广播,进而启动目标程序。注册的闹钟在设备睡眠的时候仍然会保留,可以选择性地设置是否唤醒设备,但是当设备关机和重启后,闹钟将会被清除。
在程序运行时当需要使用AlarmManager类时,可以通过Context对象的getSystemService(ContextALARM_SERVICE)方法来获得AlarmManager对象。
闹钟使用的Demo:comexampleandroidapisappAlarmController其中设定了两种闹钟,一种是一次性的,一种是重复的。
四、总结
在这个过程中,我学会了很多知识,比如Android环境的搭建和配置问题、Android的构架和基本组建等,同时我学会的最重要的一点是,要利用现有的资源去解决问题,在图书馆、在网络上寻找答案,也可以请教老师或与同学相互讨论。虽然,这个软件目前运行良好,但是我认为代码的健壮还很差,在整个工程的构思方面也不足,用户 *** 作界面还不够灵活,这些问题还需要今后逐一解决。与此同时,这个软件还可以进一步扩展,例如通过Android Api获取位置信息,并在指定地点设置闹钟提醒等,使功能更加强大,带给用户更好的体验与便捷的生活服务。
AlarmManager 的运行需要程序活着,比如在前台或者后台活着,你退出程序后还会有一个空进程在运行,时间到了就会响。
但是!但是!如果你在设置中“停止运行”了这个程序,或者使用360清理一类的清理内存的软件,或者某些软件有自动清理内存功能,或者有拦截自启动功能,或者内存低了,等等等等原因,导致你的程序没办法处于活动状态,那么AlarmManager就算到时间了也不会运行……
好的解决方法是在你的程序中写个广播接收器,接受多个广播,比如接受开机启动,网络发生变化,时区时间变化,等等广播,然后接受广播后拉起后台服务,这样你就能尽可能保证程序处于活动状态,并且要在360等权限管理软件中允许自启动。
以上就是关于基于android的闹钟如何添加和删除全部的内容,包括:基于android的闹钟如何添加和删除、Android中一个基本的闹钟程序,为什么不响、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)