Android: Las aplicaciones diseñadas para Android 12 o versiones superiores deben especificar un valor explícito para `android:exported`.
He actualizado mi versión de SDK a 31 y después recibí este error. Este es mi Gradle:
android {
compileSdkVersion 31
defaultConfig {
applicationId "com.persiandesigners.alldentshops"
minSdkVersion 16
targetSdkVersion 31
vectorDrawables.useSupportLibrary = true
versionCode 1
versionName "1"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
lintOptions {
checkReleaseBuilds false
abortOnError false
}
}
dependencies {
implementation 'androidx.appcompat:appcompat:1.4.0'
implementation 'androidx.recyclerview:recyclerview:1.2.0-alpha01'
implementation 'androidx.cardview:cardview:1.0.0-alpha01'
implementation 'com.google.android.material:material:1.2.0-alpha01'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta4'
}
Recibí este error:
Falló la combinación de manifiestos: android:exported debe especificarse explícitamente para
Hice lo que dice, este es mi código de manifiesto:
<activity android:name="mypackage.MainActivity" android:exported="true" tools:node="merge" android:label="@string/app_name" android:screenorientation="portrait" android:theme="@style/SplashScreenTheme" android:windowsoftinputmode="stateAlwaysHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN"></action>
<category android:name="android.intent.category.LAUNCHER"></category>
</intent-filter>
</activity>
Esta es la actividad de lanzamiento y he agregado la etiqueta android:exported, intenté limpiar y reconstruir, pero no funcionó. Sigo recibiendo un error de combinación en el manifiesto:
Errores de combinación: Error: android:exported debe especificarse explícitamente para <activity>. Las aplicaciones que apuntan a Android 12 y versiones posteriores deben especificar un valor explícito para `android:exported` cuando el componente correspondiente tiene un filtro de intenciones definido. Consulte https://developer.android.com/guide/topics/manifest/activity-element#exported para obtener detalles. forushgah_alldentalshop.app manifiesto principal (este archivo)
Está señalando a la actividad MainActivity.
davy.ai
El mensaje de error sugiere que el atributo
android:exported
debe ser especificado explícitamente para la actividadMainActivity
en el archivo AndroidManifest.xml. Ha añadido el atributo de la siguiente manera:Sin embargo, parece que el error persiste incluso después de agregar este atributo. En este caso, es posible que desee comprobar si hay otros componentes de actividad en su aplicación que no tengan el atributo
android:exported
especificado. El mensaje de error sugiere que todos los componentes con filtros de intenciones definidos deben tener este atributo especificado.Si aún tiene problemas, puede intentar especificar el atributo
tools:replace
para el atributoandroid:exported
en el archivoAndroidManifest.xml
de la siguiente manera:Esto debería reemplazar cualquier atributo
android:exported
existente con el que se especifica aquí, resolviendo así los errores de fusión.