- 浏览: 1577850 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (289)
- java 语法基础 (51)
- spring (8)
- mvc struct /Ant --build.xml (8)
- SOA (0)
- oracle 9i/10g (23)
- sql server 2000-2005 (3)
- 数据库基础知识 (6)
- 设计模式与软件架构 (10)
- Hibernate 持久化 (9)
- J2SE/J2EE/J2ME/AJAX 技术 (8)
- JSF 技术 (3)
- JAVA 图形化 (0)
- JMS (40)
- Eclipse 3.2 IDE 开发技巧 (13)
- 项目处理方法集合 (2)
- html/jsp/javascript (2)
- Unix/Linux (9)
- j2me/ARM/windriver/嵌入式 (4)
- 电信科学 (8)
- jsp (1)
- c/c++ (1)
- LZW压缩算法(java) (2)
- Android (77)
- 版本管理git/svn (2)
最新评论
-
huihai:
有demo吗?
NamingStrategy实现动态表名映射 -
cangbaotu:
推荐给大家一些有用的爬虫源码:https://github.c ...
网络爬虫(源代码参考) -
tuspark:
除了.classpath文件以外,.project文件也应该了 ...
Eclipse .classpath文件浅谈 -
tuspark:
造成eclipse自动关闭的原因有很多,这里有很多介绍:ecl ...
eclipse 自动关闭 解决方案 -
DEMONU:
网上都是这些,这种文章。。。
ActiveMQ中的消息持久性
对应AlarmManage有一个AlarmManagerServie服务程 序,该服务程序才是正真提供闹铃服务的,它主要维护应用程序注册下来的各类闹铃并适时的设置即将触发的闹铃给闹铃设备(在系统中,linux实现的设备名 为”/dev/alarm”),并且一直监听闹铃设备,一旦有闹铃触发或者是闹铃事件发生,AlarmManagerServie服务程序就会遍历闹铃列 表找到相应的注册闹铃并发出广播。该服务程序在系统启动时被系统服务程序system_service启动并初始化闹铃设备(/dev/alarm)。当 然,在JAVA层的AlarmManagerService与Linux Alarm驱动程序接口之间还有一层封装,那就是JNI。
AlarmManager将应用与服务分割开来后,使得应用程序开发者不用 关心具体的服务,而是直接通过AlarmManager来使用这种服务。这也许就是客户/服务模式的好处吧。AlarmManager与 AlarmManagerServie之间是通过Binder来通信的,他们之间是多对一的关系。
在android系统中,AlarmManage提供了3个接口5种类型的闹铃服务。
3个接口:
5个闹铃类型
注意一个重要的参数PendingIntent。这个PendingIntent可以说是 Intent的进一步封装,他既包含了Intent的描述又是Intent行为的执行(这种定义也许不太严格),如果将Intent比作成一个订单的 话,PendingIntent更像是一个下订单的人,因为它既要负责将订单发出去,也要负责订单发送后的处理,比如发送成功后要准备验收订单货物,发送 失败后要重发还是取消订单等操作。开发者可以通过调用getActivity(Context, int, Intent, int)
getBroadcast(Context, int, Intent, int)
getService(Context, int, Intent, int)
三种不同方式来得到一个PendingIntent实例。
getBroadcast——通过该函数获得的PendingIntent将会 扮演一个广播的功能,就像调用 Context.sendBroadcast()函数一样。当系统通过它要发送一个intent时要采用广播的形式,并且在该intent中会包含相应的 intent接收对象,当然这个对象我们可以在创建PendingIntent的时候指定,也可以通过ACTION 和CATEGORY等描述让系统自动找到该行为处理对象。
getActivity——通过该函数获得的PendingIntent可以直 接启动新的activity, 就像调用 Context.startActivity(Intent)一样.不过值得注意的是要想这个新的Activity不再是当前进程存在的Activity 时。我们在intent中必须使用Intent.FLAG_ACTIVITY_NEW_TASK.
getService——通过该函数获得的PengdingIntent可以直接启动新的Service,就像调用Context.startService()一样。
发表评论
文章已被作者锁定,不允许评论。
-
APN(default、mms、supl、dun、hipri接入点类型的区别)
2013-10-10 19:31 45583设置APN上网时,大家可能经常遇到这个问题:为什么有时要填写 ... -
AMR音频编码器概述及文件格式分析
2013-10-10 19:29 3910全称Adaptive Multi-Rate,自适应多速率编码 ... -
pad 强制加载 Hdpi资源 (2.3 dpi < 240)
2012-07-16 16:47 0pad 强制加载 Hdpi资源 (2.3 dpi < ... -
android 设计模式-享元模式
2011-12-16 23:01 2151享元(FlyWeight)模式,原意是“轻量级”模式,它用来解 ... -
statusbar 2.3
2011-11-08 16:04 1242以前我的文章分析过Stat ... -
android 输入法默认设置
2011-07-07 14:00 7144设置默认输入法 在 frameworks\base\co ... -
Android Media Scanner Process
2011-06-06 22:58 3352下面是系统图 Medi ... -
handler与多线程消息处理
2011-06-04 13:42 8237在Android下面也有多线程的概念,在C/C++中,子线程可 ... -
android light
2011-03-24 16:15 3373背光设置是在:设置->声音和显示->亮度,通过进度 ... -
PowerManagerService sensor
2011-03-22 20:06 2631默认分类 2010-12-24 14:34:55 阅读144 ... -
android 单例
2011-02-15 09:26 41861. Framework层的代码: A ... -
Android 开发之 Services 服务
2010-11-02 18:21 4190Service Service ... -
eclipse+android+ddms+adt
2010-09-14 10:30 8384用eclipse + ADT作为android ... -
Menus
2010-09-05 19:01 1753Android Menus 文章分类:移动开发 1.O ... -
Android开机自启动应用开发
2010-08-28 10:07 4550目前需要开发一个开机自启动的GTD应用程序来提醒用户的 ... -
Android2.1_Launcher学习笔记
2010-08-11 13:40 3803文章分类:移动开发 好么,2.0的源码没看几天,2.1的 ... -
Browsing Android Source in Eclipse
2010-08-09 16:00 3388Google’s Android SDK includes ... -
android 编译
2010-08-07 16:31 24881 我的系统是Ubuntu 8.04 * 2 系统上 ... -
Ubuntu linux 右键添加"以管理员身份打开","在终端中打开"
2010-08-02 15:04 4552Ubuntu linux 右键添加"以管理员身份打开 ... -
自制android1.5的源码包
2010-08-02 13:44 1862最近打算玩下android,听hong老大说最好看看源码。而a ...
相关推荐
Android_AlarmManager一些简单的操作
android AlarmManager 多个 定时 重复提醒,我这篇博文的源码。
Andorid AlarmManager的使用,通过这个实例可以变换实现闹钟功能
Android AlarmManager
AlarmManager实质是一个全局的定时器,是Android中常用的一种系统级别的提示服务,在指定时间或周期性启动其它组件(包括Activity,Service,BroadcastReceiver)。本文将讲解一下如何使用AlarmManager实现定时提醒...
NULL 博文链接:https://hz-chenwenbiao-91.iteye.com/blog/2078787
Android中使用AlarmManager设置闹钟示例代码
Android 后台运行 定时器 AlarmManager Service
AlarmManager提供了访问系统闹钟的服务。它允许你安排你的应用在未来某个时间点运行。这就相当于定时任务。对于少于60s的定时任务,不推荐使用AlarmManager,可以使用更高效的的Handler来处理频发的任务。
使用AlarmManager实现Android定时任务(闹钟),解决了Android版本更新导致的定时不准确问题。Demo源码
android安卓闹铃服务AlarmManager的使用
Android下AlarmManager的小闹钟程序,初学可以看看
主要介绍了Android开发之AlarmManager的用法,是Android应用开发中非常实用的技能,需要的朋友可以参考下
先说下需求吧, 这个是服务器端设定几个时间段,比如说 周一,周三 的下午15点。 然后让用户来勾选。如果用户选择了这个时间段,那么每个周一,周三的下午15点都给用户一个提醒
在Android平台,如何使用AlarmManager启动广播BroeadReceiver 、服务Service 、页面Activity。
本文实例讲述了Android中AlarmManager基本用法。分享给大家供大家参考,具体如下: AlarmManager的作用文档中的解释是:在特定的时刻为我们广播一个指定的Intent。简单的说就是我们设定一个时间,然后在该时间到来时...
使用AlarmManager来实现android闹钟的基本功能 注释详细~适合初学者~
这篇文章使用AlarmManager实现了Android定时后台循环任务。使用场景:项目需要app每隔一段时间就去服务端请求一次接口,从而更新本地保存的信息。 AlarmManager简介 AlarmManager是Android中常用的一种系统级别的...
Android通过AlarmManager类实现闹钟,供大家参考,具体内容如下 简介 闹钟是生活中最常用的功能了,很多App都可以加入该功能,提醒用户某个时刻要做的事情。在Android系统中可以通过AlarmManager类实现闹钟,...
Android开发中,alarmManager在5.0以上系统,启动时间设置无效的问题 做一个app,需要后台保持发送心跳包。由于锁屏后CPU休眠,导致心跳包线程被挂起,所以尝试使用alarmManager定时唤醒Service发送心跳包。 以下是...