Intent作为联系各Activity之间的纽带,其作用并不仅仅只限于简单的数据传递。通过其自带的属性,其实可以方便的完成很多较为复杂的操 作。例如直接调用拨号功能、直接自动调用合适的程序打开不同类型的文件等等。诸如此类,都可以通过设置Intent属性来完成。
Intent主要有以下四个重要属性,它们分别为:
Action:Action属性的值为一个字符串,它代表了系统中已经定义了一系列常用的动作。通过setAction()方法或在清单文件AndroidManifest.xml中设置。默认为:DEFAULT。
Data:Data通常是URI格式定义的操作数据。例如:tel:// 。通过setData()方法设置。
Category:Category属性用于指定当前动作(Action)被执行的环境。通过addCategory()方法或在清单文件AndroidManifest.xml中设置。默认为:CATEGORY_DEFAULT。
即这个activity在哪个环境中才能被激活。不属于这个环境的,不能被激活。
Extras:Extras属性主要用于传递目标组件所需要的额外的数据。通过putExtras()方法设置。
常见action
常量名称 | 意义 |
---|---|
ACTION_MAIN | 应用程序入口 |
ACTION_VIEW | 系统根据不同的Data类型,通过已注册的对应Application显示数据 |
ACTION_ATTACH_DATA | 指明附加信息给其他地方的一些数据 |
ACTION_EDIT | 系统根据不同的Data类型,通过已注册的对应Application编辑示数据 |
ACTION_PICK | 选择数据 |
ACTION_CHOOSER | 显示一个Activity选择器 |
ACTION_GET_CONTENT | 获得内容 |
ACTION_DIAL | 显示打电话的拨号盘 |
ACITON_CALL | 直接打电话 |
ACTION_SEND | 由用户指定发送方式进行数据发送操作 |
ACTION_SENDTO | 系统根据不同的Data类型,通过已注册的对应Application进行数据发送操作 |
ACTION_SEND_MULTIPLE | 共享多个二进制内容(MIME type类型) |
ACTION_ANSWER | 应答来电 |
ACTION_INSERT | 插入数据 |
ACTION_DELETE | 删除数据 |
ACTION_RUN | 运行数据 |
ACTION_SYNC | 同步数据 |
ACTION_PICK_ACTIVITY | 从数据项中选择一个子项目,并返回你所选中的项目Activity |
ACTION_SEARCH | 搜索 |
ACTION_SEARCH_LONG_PRESS | 搜索长按 |
ACTION_WEB_SEARCH | Web搜索 |
ACTION_FACTORY_TEST | 工厂测试入口点 |
ACTION_ALL_APPS | 列出所有能应用(相当于启动器Launcher) |
ACTION_BUG_REPORT | 显示出Bug报告 |
ACTION_CREATE_SHORTCUT | 创建具有“快捷方式”的Activity |
ACTION_FACTORY_TEST | 工厂测试的入口点 |
ACTION_INSERT_OR_EDIT | 插入并编辑新数据(添加联系人) |
ACTION_POWER_USAGE_SUMMARY | 显示电池的使用信息 |
ACTION_SET_WALLPAPER | 调用设置墙纸的Activity |
ACTION_SYSTEM_TUTORIAL | Start the platform-defined tutorial |
ACTION_VOICE_COMMAND | 开启语音命令Activity |
以下为系统广播 | |
ACTION_BOOT_COMPLETED | Android系统在启动完毕后发出带有此Action的广播(Broadcast) |
ACTION_TIME_CHANGED | Android系统的时间发生改变后发出带有此Action的广播(Broadcast) |
ACTION_PACKAGE_ADDED | Android系统安装了新的Application之后发出带有此Action的广播(Broadcast) |
ACTION_PACKAGE_CHANGED | Android系统中已存在的Application发生改变之后(如应用更新操作)发出带有此Action的广播(Broadcast) |
ACTION_PACKAGE_REMOVED | 卸载了Android系统已存在的Application之后发出带有此Action的广播(Broadcast) |
ACTION_AIRPLANE_MODE_CHANGED | 判断是否开启“飞行模式” |
ACTION_BATTERY_CHANGED | 监控电池状态改变 |
ACTION_BATTERY_OKAY | 电池脱离“低电量”时达到正常状态 |
ACTION_BOOT_COMPLETED | 在系统完成启动之后触发 |
ACTION_CAMERA_BUTTON | 按下“按照”按钮时触发 |
ACTION_CLOSE_SYSTEM_DIALOGS | 系统关闭时/按下Home键/锁屏等使系统窗口关闭的事件时通知 |
ACTION_CONFIGURATION_CHANGED | 当“语言”发生改变时通知(只能通过registerReceiver来注册广播,不能在清单文件中注册)【不建议使用】 |
ACTION_DATE_CHANGED | 日期改变 |
ACTION_DEVICE_STORAGE_LOW | 设备内存不足时通知 |
ACTION_DEVICE_STORAGE_OK | 设备内存情况恢复正常时通知 |
ACTION_DOCK_EVENT | Dock 底座的通知(车载、家用、桌面等底座) |
ACTION_EXTERNAL_APPLICATIONS_AVAILABLE | 安装的APP从SD卡移动到系统空间 |
ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE | 安装的APP从系统空间移动到SD卡 |
ACTION_HEADSET_PLUG | 连接上外设的时候通知(耳机等) |
ACTION_INPUT_METHOD_CHANGED | 输入法发生改变时通知 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
常见category
1 | 2 |
---|---|
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |
1 | 2 |