`
jguangyou
  • 浏览: 379815 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Intent和Intent Filters

 
阅读更多

Intent主要包含Componet name、Action、category、data、type、Extras以及flag。

  • Componet name

       启动一个组件最直接的方式就是通过Componet name,也就是组件名称,它是一个ComponentName对象,指定组件可以通过一下几种方式:

setComponent(ComponentName)

 

 

 

其实下面的三种方式,最后调用的还是      setComponent(ComponentName)方法 。例如启动一个activity:

 

intent.setComponent(new ComponentName("com.hs","ActivityA"));
startActivity(intent);
  •  Action

Action是一个普通的字符串,他代表Intent要完成的一个抽象动作,这个动作具体有哪个组件完成,action字符串本身并不关心。例如Android提供的标准Action:Intent.ACTION_VIEW,它只代表一个抽象的查看动作,但是具体查看什么,启动哪个activity来查看,它是并不知道的,还必须需要其他附加信息来决定,例如category等。但是有一点,那就是只要activity的<Intent-filter>中包含这个action,这个activity就可能启动。

给intent设置action的方法为 setAction() 。

需要说明的是,在Android系统本身定义了许多标准的action,具体参看http://developer.android.com/reference/android/content/Intent.html

 

  • category

category也是一个字符串,他为action增加额外的附加信息,例如 CATEGORY_LAUNCHER,证明这是一个Launcher。

系统也有许多标准定义的category,请参考http://developer.android.com/reference/android/content/Intent.html

  • data

data是指提供的操作数据,例如电话联系人数据等。他的访问方式是通过URI对象来访问。例如:content://contacts/people/1

  • type

type指的是data数据的数据类型或者MIME类型。一般情况下可以通过数据来推断出类型。一般情况下,data和type只要设置一个就可以了,设置data通过setData().  设置MIME 类型,使用setType(), 如果要两个都设置,你可以使用 setDataAndType().

  • Extras

这是一个额外的信息。这可以用于为组件提供扩展的信息。例如,如果我们有一个行动,发送电子邮件,我们还可以包括额外的数据块来供给主体,主体,等。使用方法putExtra(String, Bundle).

  • flag

http://developer.android.com/reference/android/content/Intent.html#setFlags(int)

 

更多内容查看http://developer.android.com/guide/components/intents-filters.html

 

分享到:
评论

相关推荐

    Intent 与 Intent Filters 实现外部调用

    在Android开发中,Intent和Intent Filters是两个至关重要的概念,它们是应用程序之间通信的主要桥梁,也是实现外部调用的关键机制。下面将详细讲解Intent和Intent Filters的工作原理以及如何使用它们来实现外部调用...

    Android系列教程之十二:Intents and Intent Filters(三).docx

    本教程将深入讲解Intent和Intent Filters,特别是如何利用它们进行数据检测。 在Intent Filter中,`&lt;data&gt;`标签用于定义Intent可以携带的数据类型和URI。例如,以下是一个简单的Intent Filter配置: ```xml ...

    android intent and intent-filters

    总的来说,Intent和Intent-Filters是Android组件间通信的关键机制,理解并熟练掌握它们对于开发高效、灵活的应用至关重要。通过定义Intent-Filters,开发者可以让组件响应各种Intent,从而实现丰富的交互和功能扩展...

    Android Intents and Intent Filters(一)

    Android Intents and Intent Filters(一) 对应博客地址:http://blog.csdn.net/michael__li/article/details/6947545

    Android开发之旅 Intents和Intent Filters(理论部分)(免费)

    系统根据Intent的属性和Intent Filters的定义,选择最适合的组件来处理Intent。这一机制确保了应用间通信的准确性和效率,是Android生态系统互联互通的基础。 通过深入理解Intents与Intent Filters的工作机制,...

    Android Intent和Intent Filter详解

    【Android Intent和Intent Filter详解】 Intent是Android系统中用于组件间通信的重要机制,它描述了想要执行的操作和可能涉及的数据。Intent对象包含了组件信息、动作(Action)、数据(Data)、类别(Category)...

    Intents and Intent Filters 理论中英双文

    内含四个pdf文件,分别为 Intent and Intent-filter Intents and Intent Filters理论英文 Intents and Intent Filters理论中文 Intent入门指南 详尽介绍关于android intent

    Android开发之旅 Intents和Intent Filters(实例部分)(免费)

    而`Intent Filters`则确保了组件之间的通信更加安全和精确,避免了不必要的组件调用。掌握这两项技术对于任何Android开发者来说都是至关重要的,它不仅能够提升应用程序的功能性,还能增强用户体验。

    Android Intents and Intent Filters(二)源代码

    Android Intents and Intent Filters(二)源代码 对应博客 http://blog.csdn.net/michael__li/article/details/6950127

    Android开发指南中文版

    #### 五、Intent和Intent Filters 意图和意图过滤器 这部分重点讲解了Intent的使用以及如何通过Intent Filters来匹配和筛选意图。Intent Filters是定义在AndroidManifest.xml文件中的,用于指定一个组件能够响应...

    android4.0 Contacts 联系人jar包

    3. **Intent和Intent Filters**:在Android应用中,Intent用于启动其他组件或传递信息。在联系人应用中,我们可以使用`ACTION_PICK_CONTACT`或`ACTION_INSERT`等预定义Intent来选择或创建新的联系人。 4. **...

    Anddroid源码集锦

    9. **Intent和Intent Filters**:Android中用于应用程序间通信的主要工具,用于启动活动、服务或广播接收器。 10. **Service**:在后台运行的组件,可以长时间执行操作,即使用户离开应用程序。 11. **...

    Android_intent_大全

    6. **Intent Filters**:在AndroidManifest.xml中,通过intent-filter标签定义组件能响应哪些Intent,包括Action、Category和Data,使得其他应用可以通过隐式Intent调用组件。 7. **startActivity()** 和 **...

    Learn-Intent:该存储库包含学习Intent Android的结果代码

    5. **IntentFilters**: 在AndroidManifest.xml文件中,开发者可能定义了Intent Filters,以便于隐式Intent可以找到相应的组件进行处理。例如,定义一个ACTION_VIEW Intent Filter可以让其他应用共享数据时调用你的...

    Android-Intents-3

    通过配置Intent Filters和发送Intents,可以灵活地控制哪些Activity可以在Tab之间切换,并且通过自定义图标增强了用户体验。这种做法不仅适用于简单的应用,也可以扩展到更复杂的应用场景中。希望本章节的内容对您的...

    【Android开发API】应用的组成部分-意图和意图过滤器.pdf

    **Intent过滤器(Intent Filters)** 由于Intent并没有明确指定目标组件,Android系统依赖Intent过滤器(Intent Filter)来决定哪个组件应该接收特定的Intent。Intent过滤器在AndroidManifest.xml文件中定义,它们描述...

    Android Intent切换

    深入理解Intent,推荐学习官方文档(https://developer.android.com/guide/components/intents-filters),以及各种Android开发教程,例如Android Developers(https://developer.android.com/studio)。...

Global site tag (gtag.js) - Google Analytics