ACTUALIZAR
Está disponible una nueva versión de Gradle y Android-gradle-plugin que soluciona estos problemas.
build.gradle (nivel superior)
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
}
gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-all.zip
RESPUESTA ANTERIOR
Si deshabilita AAPT2, simplemente está ocultando el problema real.
Tenga en cuenta que AAPT1
podría eliminarse en el futuro, por lo tanto, está obligado a usarlo AAPT2
. En realidad el guía de migración no es difícil de seguir, ya que no ve tantos cambios al mismo tiempo de esta manera es una prueba futura.
Jerarquías de elementos en el manifiesto de Android
En versiones anteriores de AAPT, los elementos anidados en nodos incorrectos en el manifiesto de Android se ignoran o generan una advertencia. Por ejemplo, considere la siguiente muestra:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myname.myapplication">
<application
...
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<action android:name="android.intent.action.CUSTOM" />
</activity>
</application>
</manifest>
Por lo tanto, debe verificar primero si realmente sigue la estructura correcta del Manifiesto como se muestra a continuación.
Estructura de archivo de manifiesto
El fragmento de código a continuación muestra la estructura general del archivo de manifiesto y cada elemento que puede contener. Cada elemento, junto con todos sus atributos, está completamente documentado en un archivo separado.
<manifest>
<uses-permission />
<permission />
<permission-tree />
<permission-group />
<instrumentation />
<uses-sdk />
<uses-configuration />
<uses-feature />
<supports-screens />
<compatible-screens />
<supports-gl-texture />
<application>
<activity>
<intent-filter>
<action />
<category />
<data />
</intent-filter>
<meta-data />
</activity>
<activity-alias>
<intent-filter> . . . </intent-filter>
<meta-data />
</activity-alias>
<service>
<intent-filter> . . . </intent-filter>
<meta-data/>
</service>
<receiver>
<intent-filter> . . . </intent-filter>
<meta-data />
</receiver>
<provider>
<grant-uri-permission />
<meta-data />
<path-permission />
</provider>
<uses-library />
</application>
</manifest>