一个 Android 应用通常有多个 Activity。每个 Activity 都显示一个用户界面,让用户可以执行特定任务,例如查看地图或拍照。要将用户从一个 Activity 转到另一个 Activity,您的应用必须使用 Intent
来定义应用执行某项操作的“意图”。当您使用 startActivity()
等方法将 Intent
传递给系统时,系统会使用该 Intent
来识别并启动相应的应用组件。使用 Intent 甚至可以让您的应用启动包含在单独应用中的 Activity。
一个 Intent
可以是*显式的*,用于启动特定的 Activity
实例;也可以是*隐式的*,用于启动任何可以处理预期操作(例如“拍照”)的组件。
本指南中的主题将向您展示如何使用 Intent
来执行与其他应用的一些基本互动,例如启动另一个应用、从该应用接收结果,以及使您的应用能够响应来自其他应用的 Intent。
主题
- 将用户发送到另一个应用
- 显示如何创建隐式 Intent 以启动可以执行操作的其他应用。
- 从 Activity 获取结果
- 显示如何启动另一个 Activity 并从该 Activity 接收结果。
- 允许其他应用启动您的 Activity
- 显示如何通过定义 Intent 过滤器来声明您的应用接受的隐式 Intent,从而使您的应用中的 Activity 对其他应用开放使用。
- Android 上的软件包可见性过滤
- 显示如果其他应用默认不可见,如何使其对您的应用可见。仅适用于面向 Android 11(API 级别 30)或更高版本的应用。
- 在软件包可见性有限的情况下实现常见用例
- 显示可能需要您更新应用清单文件以使其他应用对您的应用可见的几种应用互动类型。仅适用于面向 Android 11(API 级别 30)或更高版本的应用。
- 限制设备上 Android 容器中的加载
- 显示如何限制您的 Play 商店应用在模拟 Android 环境应用(也称为设备上 Android 容器)中加载。
有关本页主题的其他信息,请参阅以下内容