React-native-onesignal: (3.2.3) L'application Android plante avec Java.lang.IllegalStateException : FirebaseApp par défaut n'est pas initialisé dans ce processus com.{appname}. Assurez-vous d'appeler d'abord FirebaseApp.initializeApp(Context) lorsque vous appelez `init()`

Créé le 19 mai 2018  ·  14Commentaires  ·  Source: OneSignal/react-native-onesignal

La description:

Lors de l'appel de OneSignal.init() dans Android, l'application se bloque avec l'erreur Java.lang.IllegalStateException: Default FirebaseApp is not initialized in this process com.reactnativeprototype. Make sure to call FirebaseApp.initializeApp(Context) first

Lorsque vous n'appelez pas init et que vous initialisez à l'ancienne dans le build.gradle l'événement ids ne se déclenche jamais.

Environnement
SDK : v3.2.3

Étapes pour reproduire le problème :

  1. Utilisez OneSignal.init() dans Android. L'application plantera immédiatement

Commentaire le plus utile

Pour l'instant ça marche pour moi :

J'ai mis à jour mon build.gradle pour utiliser une version plus récente (3.0.1) comme dans : .../examples/RNOneSignal/android/build.gradle

Et également mis à jour mon gradle-wrapper.properties pour gradle-4.1 comme dans : .../examples/RNOneSignal/android/gradle/wrapper/gradle-wrapper.properties

Après cela, j'ai commencé à avoir des erreurs, puis j'ai changé mon app/build.gradle :

...
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;
    }
}
...

Tous les 14 commentaires

En espérant une solution aussi.. 😔

Même problème

@bighitbiker3 Si vous initialisez l'ancienne méthode - en utilisant build.gradle, vous pouvez appeler OneSignal.configure() en JS pour que l'événement ids se déclenche.

En ce qui concerne ce problème FCM particulier, nous allons enquêter, merci pour le signalement

Même l'appel de configure avec l'ancienne initialisation ne déclenche pas l'événement id pour moi

Envoyé de mon iPhone

Le 19 mai 2018, à 11h28, Brad Hesse [email protected] a écrit :

@bighitbiker3 Si vous initialisez l'ancienne méthode - en utilisant build.gradle, vous pouvez appeler OneSignal.configure() dans JS pour que l'événement ids se déclenche.

En ce qui concerne ce problème FCM particulier, nous allons enquêter, merci pour le signalement

-
Vous recevez ceci parce que vous avez été mentionné.
Répondez directement à cet e-mail, affichez-le sur GitHub ou coupez le fil de discussion.

@ bighitbiker3 la même chose pour moi. J'ai essayé beaucoup de choses et j'ai dû revenir à la version 3.1.4 pour la faire fonctionner à nouveau avec React Navigation (RN 0.55.4).

@Nightsd01 L'erreur que j'obtiens en essayant d'exécuter OneSignal.configure() pour obtenir les identifiants est You must initialize OneSignal before getting tags! Moving this tag operation to a pending queue. . Cela vient du SDK Android ici .

J'ai essayé de mettre un délai d'attente pour m'assurer que le code d'initialisation Android est exécuté avant d'appeler quoi que ce soit, mais j'obtiens toujours l'erreur ci-dessus.

J'ai du mal à déboguer à partir de là car je suis assez novice en matière d'importation de bibliothèques externes dans Android et RN 😅.

@ bighitbiker3 Veuillez essayer de mettre à jour vers 3.2.4 du SDK et faites-moi savoir si cela résout votre problème.

Je suis sur la version 3.2.4 et j'obtiens exactement le même message d'erreur lorsque j'appelle OneSignal.init()

J'utilise 3.2.4 et j'ai la même erreur avec Onesignal.init()

Pour l'instant ça marche pour moi :

J'ai mis à jour mon build.gradle pour utiliser une version plus récente (3.0.1) comme dans : .../examples/RNOneSignal/android/build.gradle

Et également mis à jour mon gradle-wrapper.properties pour gradle-4.1 comme dans : .../examples/RNOneSignal/android/gradle/wrapper/gradle-wrapper.properties

Après cela, j'ai commencé à avoir des erreurs, puis j'ai changé mon app/build.gradle :

...
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 qui a fonctionné, merci !

À tous ceux qui ont encore des problèmes avec cela, notez que les instructions de configuration de React Native ont récemment été mises à jour. Cette nouvelle section en particulier est ce qui a fait que tout fonctionnait pour moi sur 3.2.4. J'avais toujours les compileSdkVersion et buildToolsVersion définis sur les valeurs par défaut de React Native.

@ramonsenadev Merci beaucoup. Votre solution a fonctionné.
Les quelques étapes supplémentaires que j'ai effectuées après le passage à onesignal v3.2.4 étaient :
compileSdkVersion 26
buildToolsVersion "26.0.1"
targetSdkVersion 26

Assurez-vous également de mettre à jour la version de la bibliothèque de support Android
compiler "com.android. support:appcompat-v7 :26.0.1"

J'ai également dû ajouter la suite au bas de app/build.gradle

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'
            }
        }
    }
}

Merci à l'équipe OneSignal ! Semble être corrigé en 3.2.4. Tout le monde s'il vous plaît consulter le lien dans le commentaire de @jsouza181 . A très bien fonctionné pour moi

Cette page vous a été utile?
0 / 5 - 0 notes