React-native-onesignal: eine aufgelöste Abhängigkeit der Google Play-Dienstebibliothek hängt von einer anderen in einer genauen Version ab (z. B. "[10.2. 1, 16.0.99]", wird jedoch nicht in diese Version aufgelöst.

Erstellt am 17. Dez. 2019  ·  17Kommentare  ·  Quelle: OneSignal/react-native-onesignal

Beschreibung:

Ich habe React-Native-Onesignal gemäß der Dokumentation installiert. Es funktioniert auf iOS einwandfrei, verursacht jedoch auf der Android-Seite in Bezug auf Abhängigkeiten von Google Play-Diensten viele Probleme. Es scheint durchzugehen, wenn ich von 4.2.0 auf 4.1.0 auf Google-Services herabgestuft habe, aber leider unterbricht das Herunterstufen einige meiner anderen Abhängigkeiten.

Ich habe gesehen, dass dieses Problem an einigen Stellen auf der Android-Seite protokolliert wurde, was mich vermuten lässt, dass es ein Problem mit der neuesten Version des Android-SDK gibt, das von dieser reaktiven nativen Bibliothek unterstützt wird:

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

Hier ist der Fehler, den ich erhalte:

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

Umfeld

  1. React-native-Onesignal-Version 3.6.0
  2. Garn und reaktionsnativer Link

Schritte zum Reproduzieren des Problems:

  1. Installieren Sie das OneSignal SDK mit Garn in das Projekt
  2. Verwenden Sie google-services Version 4.2.0 und das onesignal-gradle-plugin zum gradle buildscript:
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. Wenden Sie das Gradle-Plugin nach dem Buildscript an
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
  1. Versuchen Sie, die Android-App zu erstellen
react-native run-android

Noch etwas:

Help Wanted

Hilfreichster Kommentar

Versuchen Sie, onesignal-gradle-plugin vor google-services in androidappbuild.gradle zu deklarieren:

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

Alle 17 Kommentare

Das gleiche Problem habe ich auch.

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 Welche Version von

Gleiches Problem bei 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.

Ein Downgrade auf 3.4.2 behebt das Problem für mich.

Können Sie bitte sicherstellen, dass Sie die neueste Version des OneSignal Gradle Plugins haben?

@rgomezp Ich habe versucht, die neueste Onesignal-Version zu installieren, die die Version 3.12.4 des OneSignal-Gradle-Plugins enthält. Das warf jedoch immer noch einen Fehler .

Es scheint, dass das 3.12.* Android SDK nicht mit den Google-Diensten 4.2 kompatibel ist.

Versuchen Sie, onesignal-gradle-plugin vor google-services in androidappbuild.gradle zu deklarieren:

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

Wie @allumina oben sagt, müssen Sie die Datei appbuild.gradle gemäß den Dokumenten bearbeiten.

@Esirei Welche Version von

v3.6.1

Früher gab es das Hinzufügen eines Signal-Gradle-Plugins zum Gradle-Dateischritt nicht. Ich denke, während des Upgrades hat das dazu geführt, dass es nicht kompiliert wurde. Das Hinzufügen dieser hat mein Problem behoben.

Dies scheint vorerst gelöst zu sein. Danke für die Teilnahme aller

@rgomezp Ich glaube nicht, dass dies behoben wurde. Jeder hier hat nur Workarounds gefunden, wie zum Beispiel ein Downgrade. Ich glaube, das ist immer noch ein großes Thema.

Ich sehe keine anderen Antworten von OneSignal als "Bitte stellen Sie sicher, dass Sie die neueste Version installieren", was nicht hilfreich war.

@rgomezp Ich habe versucht, die neueste Onesignal-Version zu installieren, die die Version 3.12.4 des OneSignal-Gradle-Plugins enthält. Das warf jedoch immer noch einen Fehler .

Es scheint, dass das 3.12.* Android SDK nicht mit den Google-Diensten 4.2 kompatibel ist.

@cmcaboy Das OneSignal Gradle Plugin ist eine unabhängige Komponente aus dem OneSignal Android Native SDK und wird nicht automatisch mitgeliefert.
Bitte überprüfen Sie, ob Sie den Abschnitt zum

Versuchen Sie, onesignal-gradle-plugin vor google-services in androidappbuild.gradle zu deklarieren:

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

Danke Bei mir funktioniert es.

In app/build.gradle habe ich diese Zeile hinzugefügt:
Plugins {
ID 'com.onesignal.androidsdk.onesignal-gradle-plugin' Version '0.12.6'
}

Versuchen Sie, onesignal-gradle-plugin vor google-services in androidappbuild.gradle zu deklarieren:

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

@allumina
Funktioniert bei mir. Vielen Dank

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

@allumina
Funktioniert bei mir. Danke ☺️ 👍

Ich habe immer noch das Problem, die oben genannten Lösungen haben bei mir nicht funktioniert. Kann jemand seine gesamten Gradle-Dateien freigeben?

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen