一、Intent简介:Intent(意图)主要是解决Android应用的各项组件之间的通讯。
Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。
因此,Intent在这里起着一个媒体中介的作用,专门提供组件互相调用的相关信息,实现调用者与被调用者之间的解耦。
二、Intent的功能:启动活动、启动服务、发送广播等等
三、显示意图和隐式意图
1.显示意图:对于明确指出了目标组件名称的Intent,我们称之为显式Intent。
直接用组件的名称定义目标组件,这种方式很直接。但是由于开发人员往往并不清楚别的应用程序的组件名称,因此,显示Intent更多用于在应用程序内部传递消息。比如在某应用程序内,一个Activity启动一个Service。
//显式意图第一种方式
//Intent intent = new Intent(this,TargetActivity.class);
//显式意图第二种方式
//Intent intent = new Intent();
//intent.setClass(this, TargetActivity.class);
//intent.setClassName(this, "com.bei_ing.TargetActivity");
//intent.setClassName("com.bei_ing", "com.bei_ing.TargetActivity");
//显式意图第三种方式
Intent intent = new Intent();
//ComponentName component = new ComponentName(this, TargetActivity.class);
//ComponentName component = new ComponentName(this, "com.bei_ing.TargetActivity");
ComponentName component = new ComponentName("com.bei_ing", "com.bei_ing