现在的位置: 首页 > 综合 > 正文

Android学习笔记(一)——-浅谈Intent思路

2018年06月05日 ⁄ 综合 ⁄ 共 1384字 ⁄ 字号 评论关闭

Intent简介:

intent是一种消息传递机制,可以在应用程序内使用,也可以在应用程序间使用。

可以用来携带数据,启动activity、service、broadCast Receiver.


一、intent常用用法: a、显式地(通过指定要装在的了类名)或者隐式地(通过请求对一条数据执行某个动作),来启动activity.

                                          b、也可以用来在系统范围内广播消息。应用程序可以在manifest文件中,注册一个广播Broadcast Recevier                                              来监听和响应这些广播Intent.

              使用Intent,  启动Activity两种方式:

                 1、使用StartActivity(),启动子Activity,无法返回数据

             

                   1、显示的:Intent intent=new Intent(Myactivity.class,YouActivity.class);

                                       startActivity(intent);

                   2、隐式的:隐式Intent提供了一种机制,可以让匿名的应用程序组件响应动作请求。

                                       eg:Intent intent=new Intent(Intent.ACTION_DIAL,Uri.parse(“tel:555-2368”));

                                             StartActivity(intent);

                                      隐式Intent发出后,Android回解析这个Intent,并启动一个新的Activity。

                                     当构建一个新的隐式Intent时,需要的条件:

                动作(Action)--------Intent.ACTION_DIAL

                                                                                                        数据:也可以,提供执行那个动作需要的数据URI

                 额外数据:Extra

                        2、 使用StartActivityForResult(),可以返回子Activity的数据

     知道了,如何使用Intent来携带数据,发送请求,启动其他组件,Intent即,在某个数据集上,执行动作的请求,接下来看看如何过滤Intent及解析Intent


二、Intent Filter

      1、 Android是如何知道,使用那个应用程序来响应这个请求,如果Intent代表了对某个数据集上执行动作的请求,Intent Filter 则声明一个特定的应用程序组件能够对一个类型的数据执行操作

    

       <Intent-filter>标签中添加:

                                    action:动作

                                    categoty:使用android:name属性指定应用在那种情况下为action提供服务,可以携带多
     个

   
    data:data标签允许指定组件可以执行的数据类型


    2、Android解析Intent Filter

 

  

                                    

抱歉!评论已关闭.