Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

346
Vistas
La compilación de Ionic Cordova siempre usa la última versión de androidx.appcompat:appcompatn y falló

Estoy ejecutando ionic cordova build android y fallando.

Después de dos días de investigación, probé varios enfoques y finalmente encontré el problema, pero no puedo encontrar la solución.

Yo uso la plataforma cordova 10.1.0, que genera project.properties como este

 target=android-30 android.library.reference.1=CordovaLib android.library.reference.2=app cordova.system.library.1=androidx.annotation:annotation:1.1.0 cordova.system.library.2=androidx.legacy:legacy-support-v4:1.+ cordova.system.library.3=androidx.appcompat:appcompat:1.+

eso funciona bien hasta hace dos días, cuando el ionic incorporado en el tablero falló.

Descubrí que androidx.appcompat:appcompat:1.+ siempre usa la última versión androidx.appcompat:appcompat:1.4.0-beta01. y el comando cordova.cmd build android me arroja el siguiente error

 A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction > The minCompileSdk (31) specified in a dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties) is greater than this module's compileSdkVersion (android-30). Dependency: androidx.appcompat:appcompat:1.4.0-beta01. AAR metadata file: C:\Users\YOAN\.gradle\caches\transforms-3\cf625c79807b9ffa78b701a3a960597e\transformed\appcompat-1.4.0-beta01\META-INF\com\android\build\gr adle\aar-metadata.properties.

Si cambio androidx.appcompat:appcompat:1.+ a androidx.appcompat:appcompat:1.3.1 , funciona, también si elimino toda la línea también funciona, pero compila solo localmente, si implemento en dashboardionicframework ci/cd, obtengo falló nuevamente porque los cambios no se reflejan en la compilación del CD de CI.

Intenté agregar <framework src="androidx.appcompat:appcompat:1.3.0" /> a config.xml, para forzar la carga de la versión específica de appcompat, pero eso no funciona.

también agregué <framework custom="true" src="config-extras.gradle" type="gradleReference" /> a config.xml para poner una configuración extra de gradle como esta:

 allprojects { repositories { configurations.all { resolutionStrategy { force 'androidx.appcompat:appcompat:1.3.1' } } } }

forzar a usar una versión específica, pero eso no funciona.

Necesito anular el valor específico de project.properties, o al menos forzar el uso de la versión específica que necesito.

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Este problema está relacionado con androidx.appcompat:appcompat 1.4.0-beta01 lanzado el 29 de septiembre de 2021.

Como plugin.xml define ANDROIDX_VERSION como versión principal 1 (1.+), se usó 1.4.0-beta01 en lugar de 1.3.0. Desafortunadamente, no puede simplemente usar cordova plugin add cordova.plugins.diagnostic --variable ANDROIDX_VERSION=1.3.+ para sobrescribir el valor, ya que se usaría la misma versión para androidx.legacy:legacy-support-v4 que existe como versión 1.0.0 solamente.

Utilicé con éxito cordova plugin add cordova.plugins.diagnostic --variable ANDROIDX_VERSION="[1.0, 1.4[" para arreglar mis compilaciones.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda