Maison  >  Article  >  développement back-end  >  Comment résoudre les notifications GCM non reçues lorsque l'application est en mode arrière-plan dans iOS ?

Comment résoudre les notifications GCM non reçues lorsque l'application est en mode arrière-plan dans iOS ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-20 15:28:30349parcourir

How to Resolve GCM Notifications Not Received When App Is in Background Mode in iOS?

Notifications GCM non reçues lorsque l'application est en mode arrière-plan dans iOS

Les notifications peuvent ne pas être reçues lorsque l'application est en mode arrière-plan en raison de les deux raisons suivantes :

  1. Configuration incorrecte des notifications en arrière-plan : Pour recevoir des notifications lorsque l'application est en arrière-plan, vous devez configurer Content-Available sur true et définir une valeur différente de zéro. Priorité dans votre script PHP.
  2. Déconnexion du service GCM : Le service GCM doit être connecté lorsque l'application passe en arrière-plan pour recevoir des notifications push. Dans votre fichier AppDelegate.m, assurez-vous que la méthode applicationDidEnterBackground inclut du code pour vous reconnecter au service GCM.

Solution :

Dans votre fichier PHP, ajoutez ce qui suit dans le tableau $post :

<code class="php">'content_available' => true,
'priority' => 'high',</code>

Mettez également à jour le tableau $data pour inclure un champ corps :

<code class="php">$data = array( 'message' => 'Hello World!', 'body' => 'Hello World!');</code>

Dans votre fichier AppDelegate.m, assurez-vous que les éléments suivants le code est présent dans la méthode applicationDidEnterBackground :

<code class="objective-c">[[GCMService sharedInstance] connectWithHandler:^(NSError *error) {
    if (error) {
        NSLog(@"Could not connect to GCM: %@", error.localizedDescription);
    } else {
        _connectedToGCM = true;
        NSLog(@"Connected to GCM");
    }
}];</code>

En implémentant ces modifications, votre application devrait désormais recevoir des notifications même lorsqu'elle est en arrière-plan.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn