当前位置: > 华清远见教育科技集团 > 嵌入式学习 > 讲师博文 > Intent介绍及其使用方法
Intent介绍及其使用方法
时间:2016-12-12作者:华清远见

1.什么是Intent

Intent直译是指意图,目的的意思,在Android中,它是一种用来执行一个操作的抽象描述,它可以用来启动一个Activity,实现Activity之间的跳转,还可以发送广播,启动服务。

Intent还可以作为连接每个Activity的纽带,在每个Activity之间传递数据。

2. Intent的数据结构

一个Intent的主要信息包括: ◇action:执行动作,比如: ACTION_VIEW, ACTION_EDIT, ACTION_MAIN等
         ◇data:用于操作的数据,比如在联系人列表中的具体某个人的信息,用uri来表示
         ◇category:给执行动作添加额外的信息,如CATEGORY_LAUNCHER 将此Activity添加到LAUNCHER 顶层,即当启动程序时使这个界面第一个显示.
         ◇type:显式指定Intent的数据类型(MIME)。一般Intent数据类型能够根据数据本身进行判定,但是假如设置了这个属性,会强制采用显式指定的类型。
         ◇component:指定Intent的目标组件的类名称。通常 Android会根据Intent 中包含的其它属性的信息,比如action、data/type、category进行查找,终找到一个与之匹配的目标组件。但是,如果 component这个属性有指定的话,将直接使用它指定的组件,而不再执行上述查找过程。指定了这个属性以后,Intent的其它所有属性都是可选的。
         ◇extra:是其它所有附加信息的集合。使用extras可以为组件提供扩展信息,比如,如果要执行"发送电子邮件"这个动作,可以将电子邮件的标题、正文等保存在extras里,传给电子邮件发送组件。

3.Intent的使用方法

①Intent可以从开发者自己的程序跳转到系统应用界面,比如点击一个按钮跳转到发短信的界面,其使用方式是通过uri的方式进行跳转,具体如下:

Intent it = new Intent(Intent.ACTION_VIEW);
        it.putExtra("sms_body", "The SMS text");
        it.setType("vnd.android-dir/mms-sms");
        startActivity(it);

②启动一个Activity,实现Activity之间的跳转 Intent it = new Intent(Main.this,Second.class);
startActivity(it);

③设置需要发送的信息,通过广播将此Intent发送出去 Intent it = new Intent();
        it.setAction("message");
        it.putExtra("message ", msg);
        sendBroadcast(it);

④启动/关闭一个服务 Intent it = new Intent(Main.this,Second.class);
        startService(it);
        stopService(it);

发表评论
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)