React-native-onesignal: una dependencia de biblioteca de servicios de Google Play resuelta depende de otra en una versión exacta (por ejemplo, "[10.2. 1, 16.0.99]", pero no se está resolviendo en esa versión.

Creado en 17 dic. 2019  ·  17Comentarios  ·  Fuente: OneSignal/react-native-onesignal

Descripción:

Instalé react-native-onesignal según la documentación. Está funcionando bien en iOS, pero está causando problemas biuld en el lado de Android relacionados con las dependencias del servicio Google Play. Parece funcionar si cambio a google-services de 4.2.0 a 4.1.0, pero desafortunadamente, la degradación rompe varias de mis otras dependencias.

He visto este problema registrado en algunos lugares del lado de Android, lo que me lleva a creer que hay un problema con la última versión del SDK de Android que es compatible con esta biblioteca nativa de reacción:

https://github.com/OneSignal/OneSignal-Android-SDK/issues/894
https://stackoverflow.com/questions/59128152/error-in-project-app-a-resolved-google-play-services-library-dependency-depen

Aquí está el error que estoy recibiendo:

> In project 'app' a resolved Google Play services library dependency depends on another at an exact version (e.g. "[10.2.
  1, 16.0.99]", but isn't being resolved to that version. Behavior exhibited by the library will be unknown.

  Dependency failing: com.onesignal:OneSignal:3.12.3 -> com.google.android.gms:play-services-location@[10.2.1, 16.0.99], b
  ut play-services-location version was 15.0.1.

  The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
  ifact with the issue.
  -- Project 'app' depends onto com.google.android.gms:play-services-location@{strictly 15.0.1}
  -- Project 'app' depends onto com.onesignal:OneSignal@{strictly 3.12.3}
  -- Project 'app' depends on project 'react' which depends onto com.onesignal:[email protected]

Medio ambiente

  1. react-native-onesignal versión 3.6.0
  2. hilo y enlace nativo de reacción

Pasos para reproducir el problema:

  1. Instale el SDK de OneSignal usando hilo en el proyecto
  2. Use la versión 4.2.0 de google-services y el onesignal-gradle-plugin para el script de compilación de gradle:
buildscript {
  ...
  repositories {
    ...
    maven {
            url 'https://plugins.gradle.org/m2/'
        }
  }
  dependencies {
    ...
    classpath 'gradle.plugin.com.onesignal:onesignal-gradle-plugin:[0.12.1, 0.99.99]'
    classpath 'com.google.gms:google-services:4.2.0'
  }
}
  1. Aplicar el complemento de gradle después del buildscript
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
  1. Intente compilar, inicie la aplicación de Android
react-native run-android

Algo más:

Help Wanted

Comentario más útil

Intente declarar onesignal-gradle-plugin antes de google-services en androidappbuild.gradle:

apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.google.gms.google-services'

Todos 17 comentarios

También tengo este mismo problema.

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':app:preDebugBuild'.
> In project 'app' a resolved Google Play services library dependency depends on another at an exact version (e.g. "[10.2.
  1, 16.0.99]", but isn't being resolved to that version. Behavior exhibited by the library will be unknown.

  Dependency failing: com.onesignal:OneSignal:3.12.3 -> com.google.android.gms:play-services-location@[10.2.1, 16.0.99], b
  ut play-services-location version was 16.0.0.

  The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
  ifact with the issue.
  -- Project 'app' depends onto com.google.android.gms:play-services-location@{strictly 16.0.0}
  -- Project 'app' depends onto com.onesignal:OneSignal@{strictly 3.12.3}
  -- Project 'app' depends on project 'react' which depends onto com.onesignal:[email protected]

  For extended debugging info execute Gradle from the command line with ./gradlew --info :app:assembleDebug to see the dep
  endency paths to the artifact. This error message came from the google-services Gradle plugin, report issues at https://
  github.com/google/play-services-plugins and disable by adding "googleServices { disableVersionCheck = false }" to your b
  uild.gradle file.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 15s

@Esirei ¿Qué versión de react-native-onesignal estás usando?

Mismo problema en 3.6.1:

* What went wrong:
Could not determine the dependencies of task ':app:preDebugBuild'.
> In project 'app' a resolved Google Play services library dependency depends on another at an exact version (e.g. "[10.2.
  1, 16.0.99]", but isn't being resolved to that version. Behavior exhibited by the library will be unknown.

  Dependency failing: com.onesignal:OneSignal:3.12.4 -> com.google.android.gms:play-services-location@[10.2.1, 16.0.99], b
  ut play-services-location version was 15.0.1.

  The following dependencies are project dependencies that are direct or have transitive dependencies that lead to the art
  ifact with the issue.
  -- Project 'app' depends onto com.google.android.gms:play-services-location@{strictly 15.0.1}
  -- Project 'app' depends onto com.onesignal:OneSignal@{strictly 3.12.4}
  -- Project 'app' depends on project 'react' which depends onto com.onesignal:[email protected]

  For extended debugging info execute Gradle from the command line with ./gradlew --info :app:assembleDebug to see the dep
  endency paths to the artifact. This error message came from the google-services Gradle plugin, report issues at https://
  github.com/google/play-services-plugins and disable by adding "googleServices { disableVersionCheck = false }" to your b
  uild.gradle file.

La degradación a 3.4.2 me soluciona el problema.

¿Puede asegurarse de tener la última versión del complemento OneSignal Gradle?

@rgomezp Intenté instalar la última versión de onesignal, que incluye la versión 3.12.4 del complemento OneSignal gradle. Sin embargo, eso todavía arrojó un error .

Parece que el SDK de Android 3.12. * Es incompatible con los servicios de Google 4.2.

Intente declarar onesignal-gradle-plugin antes de google-services en androidappbuild.gradle:

apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.google.gms.google-services'

Como dice @allumina arriba, debe editar el archivo appbuild.gradle de acuerdo con los documentos.

@Esirei ¿Qué versión de react-native-onesignal estás usando?

v3.6.1

Anteriormente, la adición de onesignal-gradle-plugin al paso del

Esto parece estar resuelto por ahora. Gracias por la participación de todos.

@rgomezp No creo que esto se haya solucionado. Todo el mundo aquí acaba de encontrar soluciones alternativas, como la degradación. Creo que esto sigue siendo un gran problema.

No veo ninguna respuesta de OneSignal que no sea "asegúrese de instalar la última versión", lo cual no fue útil.

@rgomezp Intenté instalar la última versión de onesignal, que incluye la versión 3.12.4 del complemento OneSignal gradle. Sin embargo, eso todavía arrojó un error .

Parece que el SDK de Android 3.12. * Es incompatible con los servicios de Google 4.2.

@cmcaboy El complemento OneSignal Gradle es un componente independiente del SDK nativo de Android OneSignal y no se incluye automáticamente.
Verifique que haya seguido correctamente la sección Agregar el complemento de Gradle en la guía de configuración de React Native OneSignal.

Intente declarar onesignal-gradle-plugin antes de google-services en androidappbuild.gradle:

apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.google.gms.google-services'

Gracias Funciona para mí.

En app / build.gradle agregué esta línea:
complementos {
id 'com.onesignal.androidsdk.onesignal-gradle-plugin' versión '0.12.6'
}

Intente declarar onesignal-gradle-plugin antes de google-services en androidappbuild.gradle:

apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.google.gms.google-services'

@alumina
Funciona para mi. Gracias

aplicar el complemento: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
aplicar complemento: 'com.google.gms.google-services'

@alumina
Funciona para mi. Gracias ☺️ 👍

Todavía estoy experimentando el problema, las soluciones anteriores no funcionaron para mí, ¿alguien puede compartir sus archivos gradle completos?

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