首页 > 编程知识 正文

android全局变量(intent启动组件)

时间:2023-05-05 04:23:06 阅读:76006 作者:2932

快速处理intent和intent过滤器。

1.Intent和IntentFilter介绍intent中文意思“意图”,一般使用组件之间的通信。 可用于激活活动、服务和BroadCast Recevier。

激活活动状态活动(intent );

激活服务服务(intent );

激活Broadcast sendBroadcast ();

intent通信有显性和隐形,但intent过滤器是实现隐形的intent通信。

2.Intent的简单使用方法是,只需这两列代码就可以实现事件之间的跳转。

new Intent () )的第一个参数是当前活动,第二个参数是要移动的目标活动。

intent intent=new intent (main activity.this,IntentFilterActivity.class ); 开始活动(intent; 我们跳的时候,可以传递一些信息

intent intent=new intent (main activity.this,IntentFilterActivity.class ); intent.put extra (字符串类型的密钥,任意类型的值); 开始活动(intent; 要检索传输信息,只需在目标活动中执行以下操作

Intent intent=getIntent (; //保存的信息的类型例如为stringanswer=intent.get('key ); 当然,我们也可以更新当前的活动;

可以通过

Intent intent=getIntent (; finish (; 开始活动(intent; 3 .如何使用IntentFIlter在不想透露我们的意图时可以使用IntentFIlter

简而言之,intent.setAction (、 setData )、 addCategory );

在intent中添加标识符,在intent过滤器中通过action、data和category识别自己的intent,然后启动相应的组件。

可以使用setAction以下关键字启动某些系统附带的服务,而无需设置intentFilter。 (我只列举了常用的东西)

1 Intent.ACTION_MAIN

指示活动是程序的开始

intent.set action (intent.action _ main;

2 Intent.Action.DIAL

调用拨号面板

请参阅官方api

3359 developer.Android.com/reference/Android/content/intent.html

intentFilter有三种内容:动作、数据和类别

3.1 action intent-filter至少有一个动作。 否则,它与任何intent都不匹配

intent通过方法intent.setAction ("; 设置操作并匹配intent-filter中的任何操作时,将启动相应的组件。 如果没有数据目录或两者都匹配。

如果同时匹配两个intentFilter,就会发现非常有趣的现象。

3.2 category intent通过方法intent.addCategory (; 添加类别。 只有与intentFilter中的category全部匹配时,才能触发事件。

3.3数据、数据和setData (; 用于通过方案、host、port、path、pathPrefix和pathPattern匹配Intent的数据uri。

可以通过

intent.setdata(URL; 构成

然后呢

在intentFilter中采用

按data Android 3360 scheme=' scheme ' Android 3360 host=' host ' Android 3360 port=' port ' Android 3360 path=' path '匹配

3.4 mimeType (补充:也可用于与Intent匹配)如果Intent使用intent.settype (“key”);android:mimeType=“key”中注册的所有事件都匹配。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。