React-native-onesignal: uma dependência resolvida da biblioteca do Google Play Services depende de outra em uma versão exata (por exemplo, "[10.2. 1, 16.0.99]", mas não está sendo resolvida para essa versão.

Criado em 17 dez. 2019  ·  17Comentários  ·  Fonte: OneSignal/react-native-onesignal

Descrição:

Eu instalei o react-native-onesignal de acordo com a documentação. Ele está funcionando bem no iOS, mas está causando problemas graves no lado do Android relacionados às dependências do serviço do Google Play. Parece que vai passar se eu fizer downgrade para google-services de 4.2.0 para 4.1.0, mas, infelizmente, o downgrade quebra várias das minhas outras dependências.

Já vi esse problema ser registrado em alguns lugares no lado do Android, o que me leva a acreditar que há um problema com a versão mais recente do SDK do Android compatível com esta biblioteca react-nativa:

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

Aqui está o erro que estou recebendo:

> 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]

Ambiente

  1. react-native-onesignal versão 3.6.0
  2. link nativo yarn e react

Etapas para reproduzir o problema:

  1. Instale o OneSignal SDK usando yarn no projeto
  2. Use google-services versão 4.2.0 e o onesignal-gradle-plugin para o buildscript do 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. Aplique o plugin do Gradle após o buildscript
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
  1. Tentativa de construção, inicie o aplicativo Android
react-native run-android

Algo mais:

Help Wanted

Comentários muito úteis

Tente declarar onesignal-gradle-plugin antes de google-services em androidappbuild.gradle:

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

Todos 17 comentários

Estou tendo esse mesmo problema também.

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 Qual versão de

Mesmo problema em 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.

O downgrade para 3.4.2 corrige o problema para mim.

Você pode ter certeza de que tem a versão mais recente do OneSignal Gradle Plugin?

@rgomezp Tentei instalar a versão mais recente do onesignal, que inclui a versão 3.12.4 do plugin OneSignal gradle. No entanto, isso ainda gerou um erro .

Parece que o SDK do Android 3.12. * É incompatível com google-services 4.2.

Tente declarar onesignal-gradle-plugin antes de google-services em androidappbuild.gradle:

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

Como @allumina disse acima, você deve editar o arquivo appbuild.gradle de acordo com a documentação.

@Esirei Qual versão de

v3.6.1

Isso parece estar resolvido por enquanto. Obrigado pela participação de todos

@rgomezp Não acredito que isso tenha sido corrigido. Todos aqui encontraram soluções alternativas, como fazer downgrade. Acredito que isso ainda seja um grande problema.

Não vejo nenhuma resposta do OneSignal além de "certifique-se de instalar a versão mais recente", o que não foi útil.

@rgomezp Tentei instalar a versão mais recente do onesignal, que inclui a versão 3.12.4 do plugin OneSignal gradle. No entanto, isso ainda gerou um erro .

Parece que o SDK do Android 3.12. * É incompatível com google-services 4.2.

@cmcaboy O OneSignal Gradle Plugin é um componente independente do OneSignal Android Native SDK e não é incluído automaticamente.
Verifique novamente se você seguiu corretamente a seção Adicionando o plug-in Gradle no guia de configuração React Native OneSignal.

Tente declarar onesignal-gradle-plugin antes de google-services em androidappbuild.gradle:

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

Obrigado Funciona para mim.

Em app / build.gradle, adicionei esta linha:
plugins {
id 'com.onesignal.androidsdk.onesignal-gradle-plugin' versão '0.12.6'
}

Tente declarar onesignal-gradle-plugin antes de google-services em androidappbuild.gradle:

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

@allumina
Funciona para mim. Obrigado

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

@allumina
Funciona para mim. Obrigado ☺️ 👍

Ainda estou tendo o problema, as soluções acima não funcionaram para mim. Alguém pode compartilhar seus arquivos Gradle inteiros?

Esta página foi útil?
0 / 5 - 0 avaliações