当前位置:   article > 正文

Intent意图_意图intent

意图intent

 1.通过Intent传递数据(打开Activity)

2.Action动作

3.Categorg类别

4.data数据

5.type数据类型

6.Extras扩展信息数据

7.Flags标志位Activity的启动模式

8.常用的系统Intent

Intent组件虽然不是四大组件,但确是连接四大组件的桥梁,学习好这个知识也是非常重要.

android提供了Intent机制来协助应用间的交互和通讯,或者采用更准确的说法是,Intent不仅可用于应用之间,也可以用于应用内部的activity,service和broadcast receiver之间的交互。Intent这个单词的本意是:"目的,意图,意向"。

activity、service和broadcast receiver之间是通过Intent进行通信的,而另外一个组件Content Provider本身就是一种通信机制,

不需要通过Intent。我们来看下面这个图就知道了

如果Activity1需要和Activity2进行联系,二者不需要直接联系,而是通过Intent作为桥梁。通俗来讲,Intnet类似于中介、媒婆的角色。

对于向这三种组件发送intent有不同的机制:

1.使用Context.startActivity()或 Activity.startActivityForResult(),传入一个intent来启动一个activity。  
2 将intent对象传给Context.startService()来启动一个service或者传消息给一个运行的service。
3.将intent对象传给 Context.bindService()来绑定一个service。
4.将intent对象传给 Context.sendBroadcast(),Context.sendOrderedBroadcast(),或者Context.sendStickyBroadcast()等广播方   法,则它们被传给 broadcast receiver。

Intent的相关属性:

   Intent由以下各个组成部分:
  component(组件):目的组件
  action(动作):用来表现意图的行动
  category(类别):用来表现动作的类别
  data(数据):表示与动作要操纵的数据
  type(数据类型):对于data范例的描写
  extras(扩展信息):扩展信息
  Flags(标志位):期望这个意图的运行模式

 Intent类型分为显式Intent(直接类型),隐式(间接类型)。官方建议使用隐式Intent。 Component属性明确指定Intent的目标组件  的类名称。(属于直接Intent)

 相比与显示Intent,隐式Intent则含蓄了许多,他并不明确指出我们想要启动哪一个活动,而是指一系列为抽象的action和category的信息,然后交由系统去分析这个Intent,并帮助我们找出最合适的活动去启动。

Activity和Intent Filter的匹配过程:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/235987
推荐阅读
相关标签
  

闽ICP备14008679号