Flutter-geolocator: La dependencia de Android 'androidx.core: core' tiene una versión diferente para la compilación (1.0.0) y el tiempo de ejecución (1.0.1) classpath

Creado en 12 mar. 2019  ·  15Comentarios  ·  Fuente: Baseflow/flutter-geolocator

🐛 Informe de error


Hola a todos,

No se puede instalar este complemento, probé diferentes versiones de este complemento (3.0.1, 3.0.0, 2.1.1, 2.1.0), pero ninguna no funcionó. ¿Alguien ha encontrado este problema ya?

pubsec.yaml

nombre: flutter_app
descripción: Una nueva aplicación Flutter.

versión: 1.1.0 + 1

ambiente:
sdk: "> = 2.1.0 <3.0.0"

dependencias:
aleteo:
sdk: aleteo

cupertino_icons: ^ 0.1.2
geolocalizador: ^ 3.0.1
administrador_permiso: ^ 3.0.0
meta: ^ 1.1.6
google_api_availability: ^ 2.0.0

dev_dependencies:
flutter_test:
sdk: aleteo

flutter_launcher_icons: ^ 0.6.1

flutter_icons:
image_path: "assets / img / location.png"
android: cierto

aleteo:
usa-material-design: verdadero
activos:
- assets / img / location.png
- assets / img / gps.png
- assets / img / no_gps.png

- assets / img / where.jpg

LocationPage.dart

importar ' paquete: flutter / material.dart ';
importar ' paquete: geolocator / geolocator.dart ';

class LocationPage extiende StatefulWidget {
@anular
LocationPageState createState () => LocationPageState ();
}

class LocationPageState extiende State{

initLocation () async {
Posición posición = espera Geolocator (). GetCurrentPosition (deseadaAccuracy: LocationAccuracy.high);
imprimir (posición);
}

initState () {
super.initState ();
initLocation ();
}

@anular
Compilación del widget (contexto BuildContext) {
return Scaffold (...);
}

}

SALIDA DE CONSOLA:

Ejecutando "flutter packages get" en flutter_app ... 0.6s
Lanzando lib / main.dart en MI 6 en modo de depuración ...
Inicializando gradle ...
Resolviendo dependencias ...
Ejecutando la tarea de Gradle 'ensamblarDebug' ...

FALLO: La compilación falló con una excepción.

  • Qué salió mal:
    Error en la ejecución de la tarea ':

    Dependencia de Android 'androidx. core: core 'tiene una versión diferente para la ruta de clase de compilación (1.0.0) y tiempo de ejecución (1.0.1). Debe configurar manualmente la misma versión a través de DependencyResolution

  • Tratar:
    Ejecute con la opción --stacktrace para obtener el seguimiento de la pila. Ejecute con la opción --info o --debug para obtener más resultados de registro. Ejecute con --scan para obtener información completa.

  • Obtenga más ayuda en https://help.gradle.org

CONSTRUCCIÓN FALLIDA en 4 s


La falla de Gradle puede deberse a incompatibilidades con AndroidX en esta aplicación Flutter.
Consulte https://goo.gl/CP92wY para obtener más información sobre el problema y cómo solucionarlo.


Finalizado con error: la tarea de Gradle ensamblarDebug falló con el código de salida 1

Pasos de reproducción

aleteo correr -d

Configuración

Versión: 3.0.1

Plataforma:

  • []: iphone: iOS
  • [*]: robot: Android

[✓] Flutter (canal estable, v1.2.1, en Mac OS X 10.13.6 17G65, configuración regional en-UA)
[✓] Cadena de herramientas de Android: desarrollo para dispositivos Android (SDK de Android versión 28.0.3)
[✓] Cadena de herramientas de iOS: desarrollo para dispositivos iOS (Xcode 10.1)
[✓] Android Studio (versión 3.3)
[✓] Código VS (versión 1.31.1)
[✓] Dispositivo conectado (1 disponible)

• ¡No se encontraron problemas!

Comentario más útil

para mí, agregué la migración de Android al archivo de propiedades de Gradle y luego cambié classpath 'com.android.tools. build: gradle : 3.2.1 'a classpath' com.android.tools. compilación: gradle : 3.3.1 '. Estoy usando geolocator 3.0.1. siga este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ y luego haga lo que he dicho anteriormente

Todos 15 comentarios

para mí, agregué la migración de Android al archivo de propiedades de Gradle y luego cambié classpath 'com.android.tools. build: gradle : 3.2.1 'a classpath' com.android.tools. compilación: gradle : 3.3.1 '. Estoy usando geolocator 3.0.1. siga este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ y luego haga lo que he dicho anteriormente

I

para mí, agregué la migración de Android al archivo de propiedades de Gradle y luego cambié classpath 'com.android.tools. build: gradle : 3.2.1 'a classpath' com.android.tools. compilación: gradle : 3.3.1 '. Estoy usando geolocator 3.0.1. siga este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ y luego haga lo que he dicho anteriormente

cuando agregué el (android.useAndroidX = true
android.enableJetifier = verdadero)
a las propiedades de gradle funcionó gracias

Gracias @ aidooyaw1992 , cambiar el classpath a 3.3.1 también funcionó para mí :)

I

para mí, agregué la migración de Android al archivo de propiedades de Gradle y luego cambié classpath 'com.android.tools. build: gradle : 3.2.1 'a classpath' com.android.tools. compilación: gradle : 3.3.1 '. Estoy usando geolocator 3.0.1. siga este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ y luego haga lo que he dicho anteriormente

cuando agregué el (android.useAndroidX = true
android.enableJetifier = verdadero)
a las propiedades de gradle funcionó gracias

Tenía estos configurados y estaba sucediendo el mismo problema.
Lo que me resolvió fue el consejo de @ aidooyaw1992 , cambiando el classpath a gradle: 3.3.1.

¡Gracias, @ aidooyaw1992!

Mi placer

El lunes 18 de marzo de 2019 a las 17:17 Matheus Henrique de Oliveira, <
[email protected]> escribió:

I

para mí, agregué la migración de Android al archivo de propiedades de Gradle y
luego cambió classpath 'com.android.tools. build: gradle : 3.2.1 'a classpath
'com.android.tools. compilación: gradle : 3.3.1 '. Estoy usando geolocator 3.0.1. seguir
este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ y luego hacer lo que yo
he dicho arriba

cuando agregué el (android.useAndroidX = true
android.enableJetifier = verdadero)
a las propiedades de gradle funcionó gracias

Tenía estos configurados y estaba sucediendo el mismo problema.
Lo que me resolvió fue el consejo de @ aidooyaw1992
https://github.com/aidooyaw1992 , cambiando la ruta de clase a

¡Gracias, @ aidooyaw1992 https://github.com/aidooyaw1992 !

-
Recibes esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub
https://github.com/BaseflowIT/flutter-geolocator/issues/228#issuecomment-474014943 ,
o silenciar el hilo
https://github.com/notifications/unsubscribe-auth/AIG4X9VG3JH5L3NctGCqQ0NzTDuWl3XGks5vX8obgaJpZM4brXKj
.

I there mates ... Al enfrentar el mismo problema, lo resolví cambiando la ruta de clase de 3.2.1 a
android.enableJetifier = true) a gradle.properties ....

No estoy seguro de cuál hizo que sucediera ...

Muchas gracias, equipo de futter ...

Chicos, sería muy bueno si pudieran decirnos en qué archivos hicieron los cambios. Hice una búsqueda de com.android.tools.build:gradle: , encontré 1 coincidencia, pero ahora aparece otro error:

Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:

Editar:
El cambio de classPath está en la raíz de la carpeta de Android, archivo build.gradle
Los dos booleanos también están en la raíz de la carpeta de Android, archivo gradle.properties , solo agregue las dos líneas

Ahora funciona.

¿No es peligroso cambiar propiedades al azar? ¿Seguirá siendo compatible con la versión anterior de Android?

@Robouste , el problema es que hemos actualizado el complemento Geolocator para que sea compatible con AndroidX (además de seguir siendo compatible con versiones anteriores de Android). Esto significa que también tendrá que actualizar su aplicación, lo que se puede hacer siguiendo estas instrucciones:

https://github.com/BaseflowIT/flutter-geolocator/issues/196#issuecomment -465460801

intenta agregar un script en el nivel de la aplicación

subproyectos {
project.evaluationDependsOn (': aplicación')
project.configurations.all {
resolutionStrategy.eachDependency {detalles ->
if (detalles.requested.group == 'com.android.support'
&&! details.requested.name.contains ('multidex')) {
details.useVersion "28.0.0"
}
}
}
}

si (detalles.requested.group == 'androidx.core'
&&! details.requested.name.contains ('androidx')) {
details.useVersion "1.0.1"
}

Está funcionando bien agregando android.enableJetifier = true y android.useAndroidX = true en el proyecto de compilación y cambia la ruta de clase a 3.3.1

Siguiendo resolvió mi problema
(1) Agregar dos líneas a las propiedades de Gradle
android.enableJetifier = verdadero
android.useAndroidX = true

(2) Agregue lo siguiente a root gradle

subproyectos {
project.evaluationDependsOn (': aplicación')
project.configurations.all {
resolutionStrategy.eachDependency {detalles ->
if (detalles.requested.group == 'com.android.support'
&&! details.requested.name.contains ('multidex')) {
details.useVersion "29.0.0"
}
}
}
}

Para mí, agregué la migración de Android al archivo de propiedades de gradle y luego cambié classpath'com.android.tools.build : gradle : 3.2.1 'a classpath'com.android.tools.build : gradle : 3.3. 1 '. Estoy usando geolocator 3.0.1 para mensajería instantánea.Siga este enlace https://www.youtube.com/watch?v=ZRl4t2KdEHQ , y luego haga lo que dije anteriormente para resolver mi problema, gracias chicos

Gracias aidooyaw1992 que funcionó para mí.
Otro problema que tuve fue que intl 0.16 es incompatible con flutter_localizations pero puedes declarar

dependencias:
...
flutter_localizations:
sdk: aleteo
internacional: 0.15.8
...

y luego anular
dependency_overrides:
intl: ^ 0.16.0

y funciona para dependencias en intl ^ 0.16.0

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

inceptusp picture inceptusp  ·  25Comentarios

brenoasm picture brenoasm  ·  63Comentarios

BhaveshPrince picture BhaveshPrince  ·  15Comentarios

leszekkrol picture leszekkrol  ·  21Comentarios

MartinHlavna picture MartinHlavna  ·  23Comentarios