Intent 属性参数

本文详细介绍了Android系统中Intent的常用属性,包括action、flag、categories等,并提供了官方文档链接进行深入学习。此外还列举了如何通过Intent打开系统设置中的特定页面及一些特殊的mimeType类型。

本篇收录intent 的系统自带的action,flag、categories属性值这下面的两个链接来自Google官网
链接一
链接二

对于在系统的设置应用中打开特定屏幕的操作:
链接三

intent 常用的mimeType:
链接四
补充: application/vnd.google.panorama360+jpg 全景照片的特殊数据类型

### Intent属性列表 #### 1. `action` 属性 `action` 是一个字符串,表示执行的操作。它通常用来描述目标组件应该完成的任务。常见的标准操作有: - **`android.intent.action.MAIN`**: 表示这是应用的入口 Activity[^2]。 - 自定义的动作可以通过 `<intent-filter>` 中的 `<action>` 标签来声明。 例如,在 AndroidManifest 文件中可以这样配置: ```xml <intent-filter> <action android:name="android.intent.action.KUN" /> </intent-filter> ``` #### 2. `data` 属性 `data` 定义了一个 URI 对象,指定了数据的位置或类型。它可以与 `action` 结合使用以更精确地匹配意图。如果没有指定 `host` 而只设置了 `path`,则路径可能无法生效[^1]。 #### 3. `category` 属性 类别进一步限定哪些组件能够响应特定 intent 请求。一些常用的 category 包括: - **`android.intent.category.LAUNCHER`**: 将此 activity 添加到启动器图标列表中。 - **`android.intent.category.DEFAULT`**: 默认分类,允许隐式 intents 匹配该活动[^3]。 #### 4. Flags (标志位) Flags 提供了一种方式去控制如何启动新的 activities 或者处理现有的 ones。下面列举几个重要的 flags 及其功能[^4]: - **FLAG_ACTIVITY_NEW_TASK**: 如果设置,则新 task 启动当前 activity 实例;否则会加入调用方所在 task。 - **FLAG_ACTIVITY_CLEAR_TOP**: 当前任务栈顶如果有相同 component 存在的话就清除掉中间所有的实例并重用最上面那个 instance 来接受传入参数。 以下是通过 Java 设置这些 flag 的方法之一: ```java Intent intent = new Intent(); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); ``` #### 5. Extras 数据传递机制 除了上述基本字段外,intents 还支持携带额外的数据(extras),这使得不同 components 之间共享信息成为可能。比如利用 putExtra 方法向另一个界面发送简单键值对形式的小型数据集: ```java // 发送端 Intent intent=new Intent(this,TargetActivity.class); intent.putExtra("key","value"); startActivity(intent); // 接收端 String value=getIntent().getStringExtra("key"); ``` 总结来说,以上就是关于 Android 开发过程中涉及到的主要 intent 属性介绍及其应用场景说明。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值