React-native-onesignal: (3.2.3) Android-App stürzt mit Java.lang.IllegalStateException ab: Standard-FirebaseApp wird in diesem Prozess nicht initialisiert com.{appname}. Stellen Sie sicher, dass Sie beim Aufrufen von `init()` zuerst FirebaseApp.initializeApp(Context) aufrufen

Erstellt am 19. Mai 2018  ·  14Kommentare  ·  Quelle: OneSignal/react-native-onesignal

Beschreibung:

Beim Aufruf von OneSignal.init() in Android stürzt die App mit dem Fehler Java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.reactnativeprototype. Make sure to call FirebaseApp.initializeApp(Context) first

Wenn init nicht aufgerufen und wie gewohnt in build.gradle initialisiert wird, wird das ids Ereignis nie ausgelöst.

Umfeld
SDK: v3.2.3

Schritte zum Reproduzieren des Problems:

  1. Verwenden Sie OneSignal.init() in Android. App stürzt sofort ab

Hilfreichster Kommentar

Bei mir funktioniert es momentan:

Ich habe mein build.gradle aktualisiert, um eine neuere Version (3.0.1) zu verwenden, wie in: .../examples/RNOneSignal/android/build.gradle

Und auch mein gradle-wrapper.properties für gradle-4.1 aktualisiert, wie in: .../examples/RNOneSignal/android/gradle/wrapper/gradle-wrapper.properties

Danach habe ich einige Fehler bekommen, dann habe ich mein app/build.gradle geändert:

...
dependencies {
    ...
    compile (project(':react-native-onesignal')){
        exclude group: "com.google.android.gms"
    }
    compile ("com.google.android.gms:play-services-base:12.0.1") {
        force = true;
    }
}
...

Alle 14 Kommentare

Hoffe auch auf eine Lösung..

Gleicher Fehler

@bighitbiker3 Wenn Sie auf die alte Weise initialisieren - mit build.gradle, können Sie OneSignal.configure() in JS aufrufen, um das Ereignis ids auszulösen.

Was dieses spezielle FCM-Problem angeht, werden wir es untersuchen, danke für die Meldung

Selbst der Aufruf von configure mit der alten Initialisierung löst bei mir das id-Ereignis nicht aus

von meinem Iphone gesendet

Am 19. Mai 2018 um 11:28 Uhr schrieb Brad Hesse

@bighitbiker3 Wenn Sie auf die alte Weise initialisieren - mit build.gradle, können Sie OneSignal.configure() in JS aufrufen, um das ids-Ereignis auszulösen.

Was dieses spezielle FCM-Problem angeht, werden wir es untersuchen, danke für die Meldung


Sie erhalten dies, weil Sie erwähnt wurden.
Antworten Sie direkt auf diese E-Mail, zeigen Sie sie auf GitHub an oder schalten Sie den Thread stumm.

@bighitbiker3 das gleiche für mich. Ich habe viele Dinge ausprobiert und musste auf die Version 3.1.4 downgraden, damit es zusammen mit React Navigation (RN 0.55.4) wieder funktioniert.

@Nightsd01 Der Fehler, den ich bekomme, wenn ich versuche, OneSignal.configure() auszuführen, um die IDs abzurufen, ist You must initialize OneSignal before getting tags! Moving this tag operation to a pending queue. . Dies kommt aus dem Android SDK hier .

Ich habe versucht, es in ein Timeout zu setzen, um sicherzustellen, dass der Android-Init-Code ausgeführt wird, bevor ich etwas aufrufe, aber immer noch den obigen Fehler erhalte.

Es fällt mir schwer, von dort aus zu debuggen, weil ich ein ziemlich großer Neuling bin, wenn es um das Importieren externer Bibliotheken in Android und RN geht 😅.

@bighitbiker3 Bitte versuchen Sie, auf 3.2.4 des SDK zu aktualisieren, und lassen Sie mich wissen, ob Ihr Problem damit

Ich verwende Version 3.2.4 und erhalte genau dieselbe Fehlermeldung, wenn ich OneSignal.init()

Ich verwende 3.2.4 und habe den gleichen Fehler mit Onesignal.init()

Bei mir funktioniert es momentan:

Ich habe mein build.gradle aktualisiert, um eine neuere Version (3.0.1) zu verwenden, wie in: .../examples/RNOneSignal/android/build.gradle

Und auch mein gradle-wrapper.properties für gradle-4.1 aktualisiert, wie in: .../examples/RNOneSignal/android/gradle/wrapper/gradle-wrapper.properties

Danach habe ich einige Fehler bekommen, dann habe ich mein app/build.gradle geändert:

...
dependencies {
    ...
    compile (project(':react-native-onesignal')){
        exclude group: "com.google.android.gms"
    }
    compile ("com.google.android.gms:play-services-base:12.0.1") {
        force = true;
    }
}
...

@ramonsenadev das hat funktioniert, danke!

Für alle, die immer noch Probleme damit haben, beachten Sie, dass die React Native-Setup-Anweisungen kürzlich aktualisiert wurden. Vor allem dieser neue Abschnitt hat bei mir alles zum Laufen gebracht 3.2.4. Ich hatte immer noch compileSdkVersion und buildToolsVersion auf die Standardeinstellungen von React Native gesetzt.

@ramonsenadev Vielen Dank. Deine Lösung hat funktioniert.
Einige weitere Schritte, die ich nach dem Wechsel zu onesignal v3.2.4 gemacht habe, waren:
compilierenSdkVersion 26
buildToolsVersion "26.0.1"
targetSdkVersion 26

Stellen Sie außerdem sicher, dass Sie die Version der Android-Supportbibliothek aktualisieren
Kompilieren Sie "com.android. support:appcompat-v7 :26.0.1"

Ich musste auch Folgendes am Ende von app/build.gradle hinzufügen

configurations.all {
    resolutionStrategy.eachDependency { DependencyResolveDetails details ->
        def requested = details.requested
        if (requested.group == 'com.android.support') {
            if (!requested.name.startsWith("multidex")) {
                details.useVersion '26.0.1'
            }
        }
    }
}

Danke OneSignal-Team! Scheint in 3.2.4 behoben zu sein. Bitte schaut euch alle den Link im Kommentar von

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen