我想显示'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的行为变化