Android-理解PendingIntent

PendingIntent的flag标志如下:

FLAG_CANCEL_CURRENT:如果当前系统中已经存在一个相同的PendingIntent对象,那么就将先将已有的PendingIntent取消,然后重新生成一个PendingIntent对象。

FLAG_NO_CREATE:如果当前系统中不存在相同的PendingIntent对象,系统将不会创建该PendingIntent对象而是直接返回null。

FLAG_ONE_SHOT:该PendingIntent只作用一次。在该PendingIntent对象通过send()方法触发过后,PendingIntent将自动调用cancel()进行销毁,那么如果你再调用send()方法的话,系统将会返回一个SendIntentException。

FLAG_UPDATE_CURRENT:如果系统中有一个和你描述的PendingIntent对等的PendingInent,那么系统将使用该PendingIntent对象,但是会使用新的Intent来更新之前PendingIntent中的Intent对象数据,例如更新Intent中的Extras。

整体来说PendingIntent的实现比较简单,主要和Android特定的的远程服务打交道(短信、通知、闹铃等),通常的应用无需使用。

PendingIntent的机制,这篇博文很清楚了

http://my.oschina.net/youranhongcha/blog/196933

简单地说,pendingIntent可以理解成带有上下文信息的intent(注意它并不是继承intent的),可以延迟的执行intent的操作,有点类似系统广播,一旦发出请求就脱离activity独立执行在系统中。实质上也是个binder的代理通信。

时间: 2024-10-16 21:49:49

Android-理解PendingIntent的相关文章

[转]Android中pendingIntent的深入理解

转自;here pendingIntent字面意义:等待的,未决定的Intent.要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent, int),getService(Context, int, Intent, int)  分别对应着Intent的3个行为,跳转到一个activity组件.打开一个广播组件和打开一个服务组件.参数有4个,比较

关于Android中PendingIntent的认识

转载:       PendingIntent 2010-11-16 00:03:55 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://lbrant.blog.51cto.com/2400264/424154 Intent和PendingIntent的关系,初学的时候很迷惑,用PendingIntent的时候,还会出现奇怪的问题,比如无法传递数据,无法更新数据,所以我集众家之长,加上我个人的一些实践,总结如下,希望能给你一些帮

android Intent PendingIntent的区别

含义:intent英文意思是意图,pending表示即将发生或来临的事情. PendingIntent这个类用于处理即将发生的事情.比如在通知Notification中用于跳转页面,但不是马上跳转. Intent 是及时启动,intent 随所在的activity 消失而消失. PendingIntent 可以看作是对intent的包装,通常通过getActivity,getBroadcast ,getService来得到pendingintent的实例,当前activity并不能马上启动它所包

Android中pendingIntent的深入理解

pendingIntent字面意义:等待的,未决定的Intent.要得到一个pendingIntent对象,使用方法类的静态方法 getActivity(Context, int, Intent, int),getBroadcast(Context, int, Intent, int),getService(Context, int, Intent, int)  分别对应着Intent的3个行为,跳转到一个activity组件.打开一个广播组件和打开一个服务组件.参数有4个,比较重要的事第三个和

(转载)Android理解:显式和隐式Intent

Intent分两种:显式(Explicit intent)和隐式(Implicit intent). 一.显式(设置Component) 显式,即直接指定需要打开的activity对应的类. 以下多种方式都是一样的,实际上都是设置Component直接指定Activity类的显式Intent,由MainActivity跳转到SecondActivity: 1.构造方法传入Component,最常用的方式 Intent intent = new Intent(this, SecondActivit

【转】Android理解:显式和隐式Intent---- try catch

原文网址:http://blog.csdn.net/xiao__gui/article/details/11392987 Intent是Android初学者比较难理解的一个东西.我这里以通俗易懂的语言和通俗易懂的代码,让初学者简单感受一下Intent. intent就是意图的意思.Intent分两种:显式(Explicit intent)和隐式(Implicit intent). 一.显式(设置Component) 显式,即直接指定需要打开的activity对应的类.以下多种方式都是一样的,实际

[Google Android] 理解NDK(1)-- 编译Android .so文件

原帖地址:http://www.cnblogs.com/tamer/archive/2011/01/18/1938307.html 说白了就是c代码做成动态库,被java代码调用(JNI).用C写不出可以直接在Android上跑的可执行程序来. NDK开发需要一个交叉编译环境,需要安装Cygwin, NDK. 这些准备工作就不说了网上很多,当然也可以问我. 讲一下.so文件的生成 ----------------------------------------------------------

关于android中PendingIntent.getBroadcase的注册广播

使用语句 [java] view plaincopyprint?PendingIntent intent= PendingIntent.getBroadcast(Context context, int requestCode, Intent intent, int flags) PendingIntent intent= PendingIntent.getBroadcast(Context context, int requestCode, Intent intent, int flags)

Android基础知识巩固:关于PendingIntent和广播

平时使用广播的场合比较多,但细节的东西,看过了也没有总结,以至于某些场合有小问题,还是要把原理和属性搞清楚才能运用自如. 其实也是自己比较懒,先看别人的blog,有个概念再去官网看英文的能好理解一些. 这篇补充上一篇消息推送的知识,先罗列一些基础知识,再说自己不足的地方和问题. 照例,先搬砖: 1. Android中pendingIntent的深入理解 2. Android Service 服务(二)—— BroadcastReceiver 3. Android----基础----第八天----

【Android应用开发】Intent和PendingIntent的区别

intent英文意思是意图,pending表示即将发生或来临的事情. PendingIntent这个类用于处理即将发生的事情.比如在通知Notification中用于跳转页面,但不是马上跳转. Intent 是及时启动,intent 随所在的activity 消失而消失. PendingIntent 可以看作是对intent的包装,通常通过getActivity,getBroadcast ,getService来得到pendingintent的实例 ,当前activity并不能马上启动它所包含的