安卓工作室'The activity must be exported or contain an intent-filter'



我想显示'RealMainActivity。

<activity android:name=".RealMainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

,但仍然有错误运行'app':该活动必须导出或包含一个意图过滤器。这里还需要更多的路由设置吗?

下面是关于'AndroidManifest.xml'的所有代码

<?xml version="1.0" encoding="utf-8"?>

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/Theme.Swu_guru">
<activity android:name=".WriteBorrow"/>
<activity android:name=".BorrowList"/>
<activity android:name=".BorrowInfo"/>
<activity android:name=".RegisterActivity"/>
<activity android:name=".RealMainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MainActivity"/>
</application>

你需要包括android: exported并将其设置为true或false在你的活动中,你正在使用一个意图过滤器。在你的例子中,它是。realmainactivity。

<activity android:name=".RealMainActivity" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".MainActivity"/>

你必须把exported=false在你的启动器活动清单标签,如果你的应用程序是针对Android 12 (API 31)。所以你可以在清单中添加该属性,或者直接将目标版本降级为API 30 (Android 11)。

你可以在这里了解更多:Android 12的行为变化

相关内容

最新更新