`
wayfarer
  • 浏览: 297638 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

PendingIntent和Intent

阅读更多
Notification n = new Notification(R.drawable.face_1, "Service启动", System.currentTimeMillis());
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, new Intent(this, TServiceHolder.class), 0);
n.setLatestEventInfo(this, "任务标题", "任务内容", contentIntent);
nManager.notify(NOTIFICATION_ID, n); // 任务栏启动

PendingIntent和Intent的区别:An Intent is something that is used right now; a PendingIntent is something that may create an Intent in the future. You will use a PendingIntent with Notifications, AlarmManager, etc.

 

1. GSM网络中android发送短信示例

(1)代码节选

String msg ="你好,美女";
String number = "135****6784";
SmsManager sms = SmsManager.getDefault();

PendingIntent pi = PendingIntent.getBroadcast(SmsActivity.this,0,new Intent(...),0);
sms.sendTextMessage(number, null, msg, pi, null);
Toast.makeText(SmsActivity.this,"发送成功",Toast.LENGHT_LONG).show();

 (2)代码解释

      PendingIntent就是一个Intent的描述,我们可以把这个描述交给别的程序,别的程序根据这个描述在后面的别的时间做你安排做的事情 (By giving a PendingIntent to another application, you are granting it the right to perform the operation you have specified as if the other application was yourself,就相当于PendingIntent代表了Intent)。本例中别的程序就是发送短信的程序,短信发送成功后要把intent广播出去 。
      函数SmsManager.sendTextMessage(String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)中参数解释:
      1)PendingIntent sentIntent:当短信发出时,成功的话sendIntent会把其内部的描述的intent广播出去,否则产生错误代码并通过android.app.PendingIntent.OnFinished进行回调,这个参数最好不为空,否则会存在资源浪费的潜在问题;
      2)PendingIntent deliveryIntent:是当消息已经传递给收信人后所进行的PendingIntent广播。
      查看PendingIntent 类可以看到许多的Send函数,就是PendingIntent在进行被赋予的相关的操作。

分享到:
评论
1 楼 女巫の微笑 2010-08-27  
还是没怎么明白他的作用

相关推荐

    安卓之 (解决问题)PendingIntent和Intent的区别1

    在Android开发中,Intent和PendingIntent是两个非常重要的概念,它们在组件间的通信中起到关键作用。Intent可以理解为一种消息传递对象,用于在不同组件之间传递行为和数据,而PendingIntent则是Intent的一种封装,...

    Intent和PendingIntent的区别

    简单的总结了Intent和PendtingIntent的区别,经常与alermanger 和notificationmanager一起使用。

    Android中pendingIntent与Intent的深入分析

    在Android开发中,Intent和PendingIntent是两个非常关键的概念,它们在应用程序的组件间通信中起着重要作用。Intent主要用于启动或传递数据给另一个组件,如Activity、Service或BroadcastReceiver,而PendingIntent...

    Android 之 PendingIntent用法介绍

    当创建PendingIntent时,会根据提供的Intent和Flag来决定哪些应用可以触发这个Intent,以及如何触发。这种设计使得我们可以放心地将PendingIntent传递给第三方应用,如通知系统或闹钟服务。 PendingIntent的创建...

    Notification的用法和PendingIntent使用

    Notification 和 PendingIntent 的使用 Notification 是 Android 系统中的一种机制,用于在系统状态栏中显示通知信息,通常用于提醒用户某些事件的发生。PendingIntent 则是 Android 中的一种机制,用于在特定的...

    PendingIntent

    2. **获取PendingIntent**:然后,使用PendingIntent的静态工厂方法,如getActivity()、getService()或getBroadcast(),并传入上下文(Context)、Intent、请求码(int)和标志(int)。请求码和标志用于区分不同的...

    博客《详解PendingIntent》对应的有问题的PendingIntent源码

    相同的Intent和请求码会返回相同的`PendingIntent`实例,这有助于防止重复触发。 4. **保护机制**:`PendingIntent`提供了安全层,因为它只能被拥有相同签名的应用程序使用,或者如果设置了`FLAG_GRANT_WRITE_URI_...

    PendingIntent 使用示例

    3. IntentFlag:在创建PendingIntent时,可以通过setFlags()方法设置Intent标志,比如FLAG_CANCEL_CURRENT和FLAG_UPDATE_CURRENT,它们会影响PendingIntent的行为,如替换已存在的Intent或取消当前PendingIntent并...

    Android中pendingIntent的深入理解

    1. **创建PendingIntent**: 应用通过Intent和Flags参数创建PendingIntent实例。 2. **传递给外部组件**: 将PendingIntent传递给其他应用或系统服务,如NotificationManager。 3. **外部组件请求执行**: 当外部组件...

    android 服务 Service PendingIntent 通知

    `PendingIntent`是Android中的一个关键类,它代表一个意图(Intent)的动作,可以在未来的某个时刻由系统或者其他应用触发。`PendingIntent`主要用于跨进程通信,例如在通知(Notification)中使用,当用户点击通知...

    Android Studio 实验二:Intent的使用

    Intent分为两种类型:显式Intent和隐式Intent。显式Intent用于启动特定的组件,如指定类名的Activity;而隐式Intent则是为了执行一个特定的动作,不指定具体的目标组件,而是通过Action、Data、Category等元数据来...

    Android Proximity Alert 手机接近进警告或提示功能一例.rar

    Android Proximity Alert 手机接近进警告或提示... PendingIntent pi = PendingIntent.getBroadcast(this, -1, intent, 0);  //添加接近警告  lm.addProximityAlert(latitude, longitude, radius, -1, pi);

    Android中PendingIntent的简要介绍.pdf

    总之,PendingIntent是Android系统中一个强大的工具,它使得Intent的操作可以跨越时间和空间,为应用程序的交互和扩展提供了极大的便利。理解和熟练运用PendingIntent,对于开发高质量的Android应用至关重要。

    谈谈安卓的Intent注入.pdf

    归纳了Intent入 的4种形式:Intent转换与复制、 Action/Component/Data注 、PendingIntent误用与 parseUri注 入 归纳了利用自动化的工具具发现这4类形式的方法,通过批 量的扫描,可以轻易发现这些漏洞 在每种都找到了...

    Android应用源码之Intent1_Intent.zip

    Intent1_Intent.zip中的源码应该包含了关于Intent的实例和使用方法,让我们一起深入探讨Intent在Android应用中的作用、类型、创建与传递、以及常见用法。 1. **Intent的作用** Intent的主要功能是启动一个活动...

    自制发送短信程序--SmsManager与PendingIntent类的使用

    其中,`"com.example.SMS_SENT"`和`"com.example.SMS_DELIVERED"`是自定义的广播事件,`context`是应用的上下文,`0`是请求码,`FLAG_UPDATE_CURRENT`表示如果存在相同的Intent,更新当前的PendingIntent而不是创建...

    Andriod Intent使用代码举例

    - 使用`PendingIntent`,将Intent包装成可延迟执行的对象,常用于通知、AlarmManager等场景。 - `Intent.createChooser(Intent target, CharSequence title)`:创建一个Intent选择器,让用户从多个可处理相同...

    安卓基本知识之Intent学习源代码

    Intent主要有两种类型:显式Intent和隐式Intent。 1. 显式Intent:这种Intent明确指定了要启动的目标组件(Activity或Service),通过组件的全限定类名来指定。 2. 隐式Intent:不直接指定目标组件,而是通过...

    mooc_android_lesson18_AlarmManager和PendingIntent实现定时提醒功能

    `AlarmManager`和`PendingIntent`是Android系统提供的两个关键组件,用于实现这样的定时提醒功能。下面将详细阐述这两个组件的工作原理及其结合使用的方式。 `AlarmManager`是Android系统中的一个服务,它允许应用...

Global site tag (gtag.js) - Google Analytics