The activity must be exported or contain an intent-filter
时间: 2024-10-18 15:10:21 浏览: 58
Exported-2022-12-18.vssettings
5星 · 资源好评率100%
在Android应用程序开发中,"activity 必须被导出或包含 intent-filter"这句话指的是为了让其他应用能够通过意图(Intent)启动你的Activity,它需要满足两个条件之一:
1. **Exported属性设置为true**:在`<activity>`标签中添加`android:exported="true"`属性,声明这个Activity可以被外部访问。外部应用可以通过Intent调用公开的Activity。
```xml
<activity android:name=".YourActivity"
android:exported="true">
</activity>
```
2. **添加intent-filter**:如果你希望某个特定的Activity只对某些特定的操作或者数据类型开放,可以在`<activity>`标签内使用`<intent-filter>`来指定接受的意图类型、动作(action)和其他元数据。例如:
```xml
<intent-filter>
<action android:name="com.example.YOUR_ACTION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
```
这里,`ACTION`定义了请求的行动,`CATEGORY`指定了活动的类别,使得外部应用可以根据这些信息精确地找到并启动你的Activity。
阅读全文