Cordova-plugin-firebase: onNotificationOpen n'est pas déclenché si l'application est fermée - le processus de l'application est tué en arrière-plan.

Créé le 24 nov. 2016  ·  46Commentaires  ·  Source: arnesson/cordova-plugin-firebase

Salut,

Je ne sais pas si ce comportement par défaut ou non. Mais lorsque l'application est fermée (le processus de l'application est tué), la notification push arrive et appuyez dessus, onNotificationOpen n'est pas déclenché. Est-ce que c'est comme prévu ou quelque chose doit y travailler?

messaging

Commentaire le plus utile

FirebasePlugin.java

<strong i="6">@Override</strong>
protected void pluginInitialize() {
    final Context context = this.cordova.getActivity().getApplicationContext();
    final Bundle extras = this.cordova.getActivity().getIntent().getExtras();
    this.cordova.getThreadPool().execute(new Runnable() {
        public void run() {
            Log.d(TAG, "Starting Firebase plugin");
            mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);
            if(extras != null && extras.size()>1) {
                // FirebasePlugin.sendNotification(extras);
                if (FirebasePlugin.notificationStack == null) {
                    FirebasePlugin.notificationStack = new ArrayList<Bundle>();
                }
                notificationStack.add(extras);

            }
        }
    });
}

Tous les 46 commentaires

moi aussi face au même problème :(

utilisez l'événement cordova resume pour raccrocher le rappel. voir les docs cordova sur le cycle de vie android : http://cordova.apache.org/docs/en/6.x/guide/platforms/android/index.html#lifecycle -guide

@robertarnesson Pourriez-vous expliquer un peu plus votre réponse ? J'ai le même problème sur iOS. Je peux recevoir des notifications pendant que l'application s'exécute au premier plan et en arrière-plan, mais dès que je ferme/quitte mon application, je ne peux plus recevoir de notifications.

Je reçois des notifications à la fois en arrière-plan et au premier plan (Android 6.0.1) ... Mais la notification ouverte ne déclenche pas l'application, la notification du plateau s'efface après le toucher et les données de notification sont perdues. (cela se produit même lorsque l'application est en pause). Peut-être à cause du passage pour piétons ? Existe-t-il une solution ?

@robertarnesson @Taracque

Je ne sais pas si cela aide, mais je déteste vraiment quand les gens utilisent des mots ou des liens au lieu de leurs propres exemples de code pour essayer d'aider.

Ceci est une interprétation de base de ce que j'ai dans mon index.html et cela fonctionne pour iOS et Android avec la charge utile livrée à l'application pour manipulation.

J'ai trouvé qu'avec iOS, je n'avais besoin que d'utiliser la fonction 'deviceready' de cordova.js car cela semblait se déclencher chaque fois qu'une notification était reçue lorsque les applications étaient au premier plan ET après avoir repris une application qui était en arrière-plan, que ce soit en appuyant sur le notification ou simplement en ouvrant l'application.

Pour Android, j'avais besoin d'utiliser 'resume' car 'deviceready' ne semblait se déclencher qu'une seule fois lors du premier chargement de l'application (c'est logique, je suppose).

function onLoad(){

    //fire this with load of the HTML page
    document.addEventListener("deviceready", onDeviceReady, false);

    }

    function onDeviceReady(){

    // this will fire when the app first runs (iOS and Android)
    // iOS will run this after tapping a notification as well but not Android

    // Create the resume as soon as the device is ready.
    document.addEventListener("resume", onResume, false); 

    // add initial cordova-plugin-firebase function calls here
    // e.g TokenRefresh, onNotificationOpen etc

    window.FirebasePlugin.onTokenRefresh(function(token){

    //Do something with the token server-side if it exists

    });

    // get any initial or resume notification (used for iOS)
    var payload = getNotification();

    }

    function getNotification(){

    // get any notification variables for use in your app
    window.FirebasePlugin.onNotificationOpen(function(notification){

    //Check if notification exists then do something with the payload vars
    var str = JSON.stringify(notification);
    console.log(str);

    });

    return str;

    }

    function onResume(){
    //Add plugin functions here after app has resumed from background
    // or after notification is tapped (needed for Android)

    //get resume notification and payload (needed for Android)

    var payload = getNotification();

    }

salut les gars, je pense que nous manquons le point ici. l'application elle-même même pas en arrière-plan ou au premier plan. vous essayez de tuer l'application et la fonction n'est pas déclenchée, nous ne pouvons pas l'utiliser lors de la reprise car l'application n'est pas suspendue, l'application ne passe pas au premier plan mais est démarrée. même après que l'appareil soit prêt, onNotification open n'est pas déclenché.

Je ne suis pas sûr de comprendre mais est-ce exact.

1 : votre application est totalement inactive
2 : vous recevez une notification native pour l'application
3 vous cliquez sur la notification
4 l'application se charge
5 onNotificationOpen ne se déclenche pas

Est-ce correct?

C'est pour quel OS ?

Pouvez-vous fournir une partie de votre code ?

Avez-vous inclus Cordova.js dans votre script ?

Êtes-vous sûr à 100 % qu'il n'y a pas d'erreurs js dans la page de chargement ?

@ device68 J'aimerais savoir si onNotificationOpen est déclenché lorsque l'application n'est pas lancée initialement, comme l'a dit @nikrhes .
J'ai testé à la fois sur Android et iOS avec onNotificationOpen appelé sur CV et prêt pour l'appareil. Et seule la situation que j'ai mentionnée ci-dessus n'a pas fonctionné. Il y a aussi des comportements inattendus avec d'autres situations aussi.
Vous pouvez consulter le numéro 137 que j'ai ouvert.

@chanphillip , je vais jeter un œil demain matin. Je ne peux pas confirmer iOS 10 car j'utilise une ancienne version de XCODE, mais je verrai ce qui se passe exactement sur Android.

Mon application utilise de manière significative le démarrage à froid avec les charges utiles des notifications et de la reprise, mais n'a remarqué aucun problème.

@ device68 toutes les situations fonctionnent correctement uniquement lorsque l'application est inactive, la fonction n'est pas déclenchée du tout. Je suis testé, presque sur tous les systèmes d'exploitation IOS et Android sur lesquels je peux mettre la main. Ne fonctionne toujours pas.

D'après ce dont je me souviens lors de mes tests aujourd'hui sous Android, c'est ce qui se passe.

1 application inactive

Si je reçois une notification et que je clique dessus, cela charge l'application comme prévu et tout code de plug-in dans onDeviceReady capturera cette charge utile.

Tout code dans Resume ne capturera pas la charge utile.

Toute autre notification pendant que l'application est toujours active et n'a pas encore été minimisée est reçue par des fonctions à l'intérieur de onDeviceReady.

2 minimisant l'application la première fois.

La première fois que je minimise l'application, cela s'arrête surDeviceReady car la décision est déjà prête et attend maintenant l'état de reprise.

Si je reçois une notification et que j'appuie dessus, l'application s'ouvre et le code du plug-in dans Resume capture maintenant la charge utile.

Toutes les notifications ultérieures sont toutes reçues par CV.

3 app minimisée (de manière générale)

Si mon application est réduite à tout moment et que je clique sur une notification, Resume capture cela, MAIS si je ne clique pas dessus et que j'ouvre l'application manuellement, Resume ne fait rien et aucune onNotificationOpen n'est déclenchée nulle part dans mon code.

Notez que cette activité est totalement différente dans iOS 9.3

4 application de premier plan

Si, après avoir repris, je reçois une notification dans l'application, Resume capture la charge utile.

5 application mortelle

Si je tue l'appli, on repart du #1

6 charges utiles

Les deux différences que j'ai constatées avec les données envoyées par GCM sur Android dépendent du fait que la notification a été cliquée en dehors de l'application ou reçue alors qu'elle est au premier plan.

Google ajoute le code temporel, l'expéditeur, l'identifiant du message, etc. si la notification est activée.

Google supprime ce qui précède mais ajoute simplement tap = false dans toutes les autres circonstances.

Toutes les variables de données que vous envoyez sont présentes dans tous les cas.

J'utilise l'API Curl côté serveur pour envoyer des messages entre le Web, Android et iOS

Au final tout semble logique sur Android, c'est en fait l'implémentation d'iOS qui est fausse et illogique.

Tout sur iOS fonctionne avec onDeviceReady et onNotificationOpen est appelé chaque fois qu'une notification est reçue, même lorsque vous ouvrez une application manuellement après avoir été averti, cliqué sur un message ou reçu une notification alors que l'application est au premier plan.

J'espère que cela t'aides.

Mais vous devez utiliser à la fois onDeviceReady et Resume et placer des versions de onNotificationOpen sous chacun si vous souhaitez capturer la charge utile dans toutes les situations.

@ device68 Merci pour votre explication détaillée.
En fait, je l'ai mal dit, je mettais également onNotificationOpen dans la reprise et la préparation de l'appareil, mais le cas d'utilisation 1 (cliquer sur la notification lorsque l'application n'est même pas lancée) ne fonctionnait pas de mon côté, alors que les autres cas d'utilisation fonctionnent comme ce que tu décris.

Je suppose que vous n'utilisez pas de cadre ionique pendant les tests. J'utilise platform.ready() mais cela devrait être le même que deviceready d'après ma compréhension.

Pourriez-vous confirmer que onNotificationOpen est déclenché même lorsque l'application n'est pas lancée (l'application a été tuée) de votre côté ? Est-il également possible pour vous de tester cela sur iOS également ? Merci.

@chanphillip pas de problème content de pouvoir aider.

Correct, j'utilise simplement le plug-in raw phonegap installé via CLI, puis ce plug-in installé à l'intérieur.

Hmm en fait, j'ai fait quelques tests supplémentaires et créé une vidéo de mon appareil avec des alertes à 4 endroits.

https://www.youtube.com/watch?v=xrWQH2wE8Fo

Cela semble confirmer ce que vous voyez. onNotificationOpen n'est PAS déclenché du tout lorsque vous appuyez sur une notification qui provoque un démarrage à froid de l'application. Ce n'est qu'après cela que les notifications sont collectées à partir de la fonction onNotificationOpen.

Les écouteurs se déclenchent comme prévu mais pas onNotificationOpen.

Pour moi, ce n'est pas spécifiquement un problème pour mon application, ce qui explique probablement pourquoi je ne l'avais pas vu jusqu'à présent.

J'ai testé sur des appareils fonctionnant sous Android 4+, 6+ et 7+, tous les mêmes résultats.

Malheureusement, je ne pense pas pouvoir beaucoup aider avec iOS, j'utilise Virtualbox avec Yosemite et XCODE 7.1 (obligé d'inclure le SDK iOS 9.3). J'ai trouvé des notifications fonctionnant exclusivement avec onDeviceRedy et je n'avais même pas besoin d'utiliser Resume. C'était pour les appareils avec iOS 9+ mais inférieur à 10+

Cependant, les utilisateurs finaux ont mis à jour leurs téléphones vers 10.2 et les notifications ont cessé de fonctionner. Je crois que c'est à cause de ma construction XCODE avec le SDK 9.3, j'ai maintenant besoin d'acheter un Mac :-(

Faites-moi savoir si la vidéo vous aide.

Je suis confronté au même problème. L'application s'ouvre mais ne déclenche pas la fonction. J'ai essayé de reproduire le comportement sur votre vidéo et bien sûr j'attends l'état ondeviceready. Mais la méthode ne se déclenche jamais.

Veuillez noter : lors de l'évaluation de la fonction via la prise de la table lumineuse, cela fonctionne. Cela ne fonctionne que lorsque je l'évalue sur l'IDE. Mais la fonction ne se déclenche jamais, comme la version plugin de la méthode n'est "pas appelée". Pourquoi évaluer la fonction fonctionne ?

Salut,
Je suis confronté au même problème, j'essaie donc de comprendre ce qui se passe dans le code.
Pour le cas d'utilisation de démarrage à froid, la doc indique d'utiliser onNewIntent.
Le code du plugin semble bon.

    <strong i="9">@Override</strong>
    public void onNewIntent(Intent intent) {
        super.onNewIntent(intent);
        FirebasePlugin.sendNotification(intent.getExtras());
    }

Mais ce rappel à appeler nécessite que la notification définisse une intention pour commencer à utiliser click_action dans la charge utile

{
  "to": "/topics/news",
  "notification": {
    "title": "Click Action Message",
    "text": "Sample message",
    "click_action": "android.intent.action.MAIN"
  }
}

J'essaie de le faire mais sans succès, pas sûr de vouloir doit être défini en action de clic.
Quelle que soit la valeur que j'ai définie, l'application ne se lance pas

        <activity android:name="MainActivity" >
            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

Pour contourner le manque d'action de clic, il pourrait être intéressant de lire le contenu supplémentaire lors de l'initialisation du plugin.
J'essaie avec ce code et cette fois j'ai reçu la notification.

<strong i="21">@Override</strong>
    protected void pluginInitialize() {
        final Context context = this.cordova.getActivity().getApplicationContext();
        final Bundle extras = this.cordova.getActivity().getIntent().getExtras();
        this.cordova.getThreadPool().execute(new Runnable() {
            public void run() {
                Log.d(TAG, "Starting Firebase plugin");
                mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);
                if(extras != null && extras.size()>1) {
                    FirebasePlugin.sendNotification(extras);

                }
            }
        });
    }

Quoi qu'il en soit, cela ressemble à un sale hack.

Ok j'arrive à utiliser click_action en ajoutant une catégorie par défaut dans le manifest.xml mais onNewIntent n'est pas appelé.

            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

FirebasePlugin.java

<strong i="6">@Override</strong>
protected void pluginInitialize() {
    final Context context = this.cordova.getActivity().getApplicationContext();
    final Bundle extras = this.cordova.getActivity().getIntent().getExtras();
    this.cordova.getThreadPool().execute(new Runnable() {
        public void run() {
            Log.d(TAG, "Starting Firebase plugin");
            mFirebaseAnalytics = FirebaseAnalytics.getInstance(context);
            if(extras != null && extras.size()>1) {
                // FirebasePlugin.sendNotification(extras);
                if (FirebasePlugin.notificationStack == null) {
                    FirebasePlugin.notificationStack = new ArrayList<Bundle>();
                }
                notificationStack.add(extras);

            }
        }
    });
}

J'ai eu le même problème que décrit ci-dessus, principalement, la charge utile de notification n'a pas été livrée lorsque l'application a été lancée en appuyant sur une notification. La suggestion de @ huny0522 semble résoudre le problème. 👍

Intéressant, je n'en ai pas spécifiquement besoin, mais je vais essayer aussi et voir si cela fonctionne pour moi. Ce serait idéal si les développeurs de ce plugin pouvaient implémenter ce changement d'une manière ou d'une autre, car cela semble être un gros problème pour la plupart des gens qui ont besoin d'une charge utile de notification après le démarrage à froid d'une application.

Ce problème est résolu ou le sera dans la prochaine version ! ?

Le correctif de @ huny0522 n'a pas résolu le problème pour moi. Rappel onNotificationReceived ignoré avec le démarrage à froid d'Android. Tous les autres scénarios se comportent comme prévu.

La réinstallation du plugin de github a résolu le problème pour moi, après avoir essayé toutes les solutions suggérées

plugin cordova ajouter https://github.com/arnesson/cordova-plugin-firebase.git --save

Quelqu'un a résoudre le

étape 3 que @device68 a écrit ??

application minimisée (en général)

Si mon application est réduite à tout moment et que je clique sur une notification, Resume capture cela, MAIS si je ne clique pas dessus et que j'ouvre l'application manuellement, Resume ne fait rien et aucune onNotificationOpen n'est déclenchée nulle part dans mon code.

C'est mon seul problème maintenant.

Problème similaire ici.

J'ai dû supprimer cette ligne de l'objet envoyé : "click_action":"YOUR_DATA_HERE".

Maintenant, l'application se lance correctement lorsque je touche la notification reçue en arrière-plan.

J'espère que ça aide.

J'ai également les mêmes problèmes sur une application ionique/cordova, mais uniquement sur un appareil avec Android 6.0. Dans cet appareil, la notification est toujours déclenchée dans la barre d'état, que j'aie l'application en arrière-plan ou au premier plan (!) Et le rappel ne se déclenche jamais lorsque j'ouvre la notification, donc je ne reçois pas la charge utile.
Tous les autres appareils que j'ai testés étaient corrects (Android 5, iOS 9 et 10) : au premier plan, il déclenche les données de rappel et j'y réagis, et en arrière-plan reçoit la notification normalement dans la barre d'état, comme décrit dans la documentation.

@abhishek-kollipara, le problème abordé n'est pas de savoir comment récupérer la charge utile dans l'état de premier plan/arrière-plan, mais plutôt lorsque l'application est démarrée à froid en appuyant sur une notification et en récupérant la charge utile de notification. ce n'est pas le problème de la formation de la charge utile, en particulier lorsqu'elle est décrite dans la documentation d'un autre plugin et non dans celui-ci.

J'ai eu mon premier succès en attrapant la charge utile sur un démarrage à froid depuis les deux derniers jours, lorsque j'ai commencé à la traquer. récupérez le plugin natif ionique 'web intent'. installez-le comme documenté et utilisez sa fonction intégrée getIntent() au démarrage. si l'application est démarrée par une notification, les données de notification seront quelque part à l'intérieur de l'objet renvoyé.

@heidji Cela fonctionne sur IOS ?

Sur mon cas :

Android:
-Démarrage à froid : Lancer OnNotificationOpen
-Application minimisée : lancez OnNotificationOpen
-Application de premier plan : lancez OnNotificationOpen

IOS :
-Démarrage à froid : PAS de lancement OnNotificationOpen
-Application minimisée : lancez OnNotificationOpen
-Application de premier plan : lancez OnNotificationOpen

Merci pour l'aide

@Hanzofm Je ne sais pas si cela fonctionne sur iOS pour être honnête. essayez simplement d'utiliser le plug-in Web Intent et enregistrez sa sortie dans la console au démarrage.

J'ai le même comportement dans iOS décrit par @Hanzofm

J'ai le même comportement sous iOS. Le onNotificationOpen n'est pas appelé lors du démarrage à froid de l'application iOS en cliquant sur la notification. Utilisation du plug-in version 0.1.25.

Mettre à jour:
J'utilisais également les "cordova-plugin-local-notifications" avec le plugin firebase et cela a causé le problème. Lorsque j'ai supprimé le plugin "cordova-plugin-local-notifications", cela a bien fonctionné.

J'ai également du mal à faire en sorte que noNotificationOpen se déclenche lors des démarrages à froid (iOS). Existe-t-il une solution?

Merci

Dans mon cas, la suppression du plugin de notifications locales a été résolue. Il y a une incompatibilité avec ce plugin et les plugins de notification push

Je n'ai malheureusement pas ce plugin :)

C'est censé être allumé ?

skjermbilde 2018-04-27 kl 09 22 50

Fermeture pour nettoyage. Veuillez tester avec la dernière version et rouvrir si le problème persiste.

@heidji disons que nous avons résolu le problème en utilisant votre méthode, avez-vous des informations sur la façon d'obtenir les données de notification dans la situation suivante ?

L'application est complètement fermée. L'utilisateur reçoit une notification push. L'utilisateur ne clique pas sur la notification mais la supprime de la barre de notification. L'utilisateur ouvre l'application plus tard, accède à la page des notifications et ne voit rien. Parce que l'utilisateur ne reçoit pas la notification au premier plan et n'a pas cliqué dessus pour ouvrir l'application. Mais nous avons encore besoin de savoir que cette notification existe pour montrer à l'utilisateur. Comment faire cela dans ionic3?

@akildemir il n'y a aucun moyen de le faire dans Ionic, vous devrez enregistrer les notifications sur votre propre serveur et les récupérer lorsque l'utilisateur ouvre l'application comme n'importe qui le ferait normalement.

@heidji comment vais-je enregistrer les notifs sur mon serveur pour les récupérer, si je ne sais pas que cette notification existe ?
Existe-t-il un moyen pour que firebase envoie également les notifs à mon serveur avec un appareil ou Voulez-vous dire ne pas utiliser firebase mais utiliser votre propre serveur pour les notifs?

@akildemir Je veux dire lorsque vous CRÉEZ une notification push, vous enregistrez également son existence ailleurs, comme sur votre propre serveur ou sur le serveur que vous utilisez pour votre projet. Je pense que firebase fournit également ces services.
Je ne sais pas comment vous créez ces notifications mais dans mon projet quand quelque chose se passe sur mon serveur PHP, par exemple quelqu'un vous a envoyé un message, je contacte firebase pour envoyer une notification et je stocke AUSSI cet événement avec un "is_read = 0" flag, donc si l'utilisateur ne clique jamais sur la notification, il peut la récupérer sur le site Web ou l'application utilise votre propre service pour appeler ces notifications ou quoi que ce soit, juste des trucs de développement standard.

@heidji Je n'ai pas de site Web pour mon application mais oui ce que vous avez dit est assez logique, je peux stocker la notification sur mon serveur en même temps et la récupérer plus tard. Merci! et oui, je peux être considéré comme un débutant dans le domaine du développement mobile. Puis-je aussi demander autre chose ? Comment puis-je enregistrer la même notification sur plusieurs appareils via Firebase ? vous pouvez le considérer comme une discussion de groupe. Lorsque quelqu'un tape quelque chose dans le chat de groupe, tout le monde dans le groupe l'obtient. J'utilise ce format pour enregistrer une notification :

laisser corps = {
"notification":{
"titre":"titre" , "body":"body" ,
},
"Les données":{
"param1" : "valeur1"
},
"à": DeviceId ,
"priorité":"élevée",
"restricted_package_name":""
}

  let options = new HttpHeaders().set('Content-Type','application/json');
  this.http.post("https://fcm.googleapis.com/fcm/send",body,{
    headers: options.set('Authorization', 'key=),
  })

ici, si vous passez deviceId à la section "to", il l'envoie à l'appareil. mais puis-je passer plusieurs deviceId ici?

@nikrhes Vous pouvez le vérifier dans les métadonnées :
window.FirebasePlugin.onNotificationOpen().subscribe((data) => {
si (data.tap) {
// utilisateur tapant sur la notification
} autre {
// l'application s'exécute au premier plan
}
});

Je ne suis pas sûr que cela ait jamais été résolu, mais je cherche la réponse depuis des mois à travers les différents fils de discussion à ce sujet. Pour être clair, le problème est que onNotification ne se déclenche pas spécifiquement dans le cas d'iOS où l'application est complètement fermée/éteinte/tuée. La notification arrive, démarrez l'application à froid, mais la fonction ne se déclenche pas et la charge utile n'est pas livrée.

@heidji - votre solution de contournement consistant à stocker les événements push sur le serveur et à vérifier s'ils ont été lus a du sens. Cependant, dans notre application, il existe des scénarios pour lesquels cela ne fonctionnera pas (c'est-à-dire que nous devons déterminer si la notification est déclenchée en fonction du fait que l'utilisateur a réellement cliqué dessus et non s'il l'a lu.)

Mais le principal, comme tant d'autres l'ont déclaré, est que cela semble être un comportement critique pour lequel il doit y avoir une solution ?

@wwwguy ma solution n'est pas une solution de contournement. c'est une pratique courante que tout le monde utilise, grand ou petit.
vous ne pouvez pas compter sur les presses de notification, ce ne sont pas des événements garantis. je veux dire quand j'appuie sur une notification facebook sur mon téléphone xiaomi parfois l'application ne s'ouvre même jamais.

Oui je comprends. Nous avons déployé des dizaines d'applications pour de nombreux clients différents. Nous utilisons également la pratique du suivi des notifications "lectures" sur le serveur dans plusieurs de nos applications. Mais il y a d'autres cas à considérer - c'est-à-dire des notifications qui sont plus que de simples notifications, mais portent plutôt des charges utiles qui dirigent ensuite certaines fonctionnalités de l'application si elles sont cliquées. Facebook c'est de la merde. Tout le monde le sait. Mais les notifications FB ne sont que cela, de simples notifications (qui s'affichent simplement dans une liste d'archives à l'intérieur de l'application). Ils ne sont pas de nature fonctionnelle. c'est-à-dire qu'il n'y a pas certains types de notifications FB qui, lorsque vous cliquez dessus, doivent ouvrir l'application et vous diriger vers un endroit spécifique.

Quoi qu'il en soit ... je ne postais pas nécessairement pour entrer dans une grande discussion philosophique (en fait, je faisais juste un signe de tête à @heidji pour la bonne idée car cela réglerait le problème dans de nombreux cas). Mais nous pouvons sûrement tous convenir que ceci :

Android Open App = FONCTIONNE
Application iOS ouverte = FONCTIONNE
Application d'arrière-plan Android = FONCTIONNE
Application d'arrière-plan iOS = FONCTIONNE
Démarrage à froid d'Android à partir de l'application tuée = FONCTIONNE
Démarrage à froid iOS à partir de l'application tuée = NE FONCTIONNE PAS

... n'est pas la conception prévue du plugin. Il s'agit donc soit d'un bogue que le développeur n'a pas résolu (peut-être en raison des causes de confusion sur tous ces différents threads et de différentes personnes qui diagnostiquent mal le problème), ou bien de quelque chose d'autre comme des variables passées dans le corps PUSH ou une fonctionnalité compilée dans xCode provoquant ce comportement.

Correction d'un bogue pour le plugin par le développeur à part... quelqu'un a-t-il pu isoler un correctif de code manuel pour cela ?

honnêtement, la notification du démarrage à froid sur iOS fonctionne pour moi à 100%. J'ai utilisé le plugin webintent uniquement pour Android car onNotificationOpen n'a pas fonctionné pour moi là-bas et webintent n'existe pas sur iOS.
si vous avez besoin de précisions sur ma configuration faites le moi savoir

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

Questions connexes

JonSmart picture JonSmart  ·  3Commentaires

eilian92 picture eilian92  ·  4Commentaires

danielpalen picture danielpalen  ·  5Commentaires

arunkatariaoodles picture arunkatariaoodles  ·  4Commentaires

jdla1990 picture jdla1990  ·  4Commentaires