网站大量收购独家精品文档,联系QQ:2885784924

Intent 及 Intent Filter 经验总结.docx

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
胡言乱语Android~博客园首页博问闪存新随笔联系订阅管理随笔-6? 文章-0? 评论-60? Intent 和 Intent FilterAndroid 应用程序中有三大核心组件: Activity, Service, Broadcast Receiver 都是通过被称之为意图的消息运行。Intent messaging is a facility for late run-time binding between components in the same or different applications. 意图本身一个 Intent 对象,它保存了对要执行操作的抽象描述—对于broadcasts来说,则表示对已经发生并且正要报告的操作。对这下三种组件,发送intents分别有不同的机制。传递一个Intent对象到 Context.startActivity(intent) 或者 Activity.startActivity ForResult(int) 去运行一个Activity(可以在通过此方式启动后的Activity中调用 Activity.setResult() 设置结果参数,该参数将会在启动当前activity的activity中被接收可以通过onActivityResult(int requestCode, int resultCode, Intent data) 接收)传递一个Intent对象到 Context.startService(intent) 去启动一个service 或者传递一个新的指令到正在运行的service中。另外,还可以通过 Context.bindService(intent) 去绑定一个Service。(在调用组件和目标Service 建立一个连接)传递一个Intent对象到任何一个broadcast methods (如: Context.sendBroadcast() , Context.sendOrderedBroadcast(), Context.sendStickyBroadcast() )该intent将被传递给所有已经被注册的broadcast receiver中。在以上的三种情况下,当Intent被传递出后,Android系统会找到适合的activity,service,或者是多个broadcast receiver去响应这个intent。,这三种情况不会存在重叠的部分,它们相互独立,互不干扰。(调用Context.startActivity()后 intent只会被相应的activity接收到)?Intent Object一个Intent对象是一个信息包。它包含了要接收此Intent的组件需要的信息(例如需要的动作和动作需要的信息)和 android 系统需要的信息(要处理此Intent的组件的类别和怎样启动它)总的来说,Intent Object 主要包括以下信息:Component name 处理Intent 的组件名称。此字段是一个ComponentName object它是目标的组件的完整限定名(包名+类名)例如: “com.android,.test.TestActivity” .该字段是可选的。如果设置了此字段,那么 Intent Object 将会被传递到这个组件名所对应的类的实例中。如果没有设置,Android 会用 Intent object 中的其它信息去定位到一个合适的目标组件中。(称之为 : Intent 解析。。。这个稍后会讲到)设置Component name 可以通过 setComponent() , setClass() 或者 setClassName()进行设置。可以通过 getComponent() 进行读取动作(Action)一个字符串,代表要执行的动作。-- 或者,对于 broadcase intents 来说,表示正在发生,并且被报告的动作。Intent 类中定义了许多动作常量。如下:Constent( 常量) Target Component (目标组件)Action (动作 )ACTION_CALLactivity初始化一个电话呼叫ACTION_EDITactivity显示用户要编辑的数据ACTION_MAINactivity将该Activity作为task的第一个Activity ,没有数据输入,也没有数据返回ACTION_SYNCactivity在设备上同步服务器上的数据ACTION_BATTERY_LOWbroadcast receiver电量不足的警告ACTION_HEADSET_PLUGbroadcast receiver耳机插入设备,或者从设备中拔出ACTION_SCREEN_ONBroadcast re

文档评论(0)

0520 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档