原来开发的Android项目,AndroidManifest声明一个Activity如下:
<activity
android:name="LoginActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
打包在Android低版本也是可以运行的,但是在Android12上面就识别不了,后面发现少了一个参数:
android:exported="true",声明是否把Activity暴露出去,应该是Android 12为了软件的安全加了检查机制,需要指定exported为true才能被识别。
正确如下:
<activity
android:name="LoginActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>