Comment mettre en œuvre les notifications push sur mon application iOS avec Parse Server


Le tutoriel ci-dessous détaille comment le faire en utilisant Parse Server hébergé à www.back4app.com.

Du moment que votre appareil iOS détecte le push, vous n'avez pas besoin de compte développeur apple. Il y a 4 étapes principales pour utiliser Push.

  1. App ID et certification SSL : Ce certificat permettra au serveur Parse d'envoyer des notifications push à l'application identifiée par l'App ID.
  2. Provisionnement du profil pour cette app ID : Il authentifie votre appareil pour exécuter l'application que vous développez. Que vous ayez créé une nouvelle App ID ou modifié une App ID existante, vous devrez régénérer votre profil de provisionnement et l'installer.
  3. Configurer l'app Parse en utilisant le certificat SSL généré : Pour utiliser les notifications Push avec Parse, vous devrez activer cette fonctionnalité dans votre app Parse et télécharger le certificat SSL Push que vous avez créé ci-dessus

Voyons chacun d'eux en détail.

  • App ID et certification SSL

Avant d'obtenir le certificat SSL, vous devez signer un fichier de demande de signature de certificat. Pour ce faire, ouvrez votre application trousseau de clés. Allez dans l'accès au trousseau et demandez un certificat à l'autorité de certification. Remplissez les informations requises et téléchargez le fichier de demande de signature .cert.


main-qimg-58d942b5787f708dddb687cf3e51dd8b.webp main-qimg-039979ad8c6df9dc9958be181ffb4ddb.webp

Maintenant, connectez-vous au portail des développeurs Apple. Allez dans le portail de provisionnement iOS. Sélectionnez App IDs dans le menu.

main-qimg-3c936db373ce55c904962b864b9ec649.webp

Si vous avez déjà configuré un App ID pour votre application, vérifiez à nouveau qu'il a été configuré comme un App ID explicite. Les Wildcard App ID ne peuvent pas prendre en charge les notifications push et elles sont faciles à identifier : le dernier caractère de l'identifiant du bundle est un astérisque (*). Les Wildcard App ID ne peuvent pas être convertis en Explicit App ID, mais la configuration d'un nouvel App ID pour votre application est assez simple.

Sélectionnez le bouton new app ID. Remplissez le formulaire avec tous les détails. Cliquez sur soumettre.

main-qimg-98ebfc1e4345555b1c557a244f65f091.webp

Vous trouverez votre app ID dans la liste et il y a une option pour le configurer. Vous trouverez le certificat SSL que vous recherchez.

Si vous êtes encore en train de développer votre application, vous pouvez choisir Development Push SSL Certificate, sinon si vous êtes prêt à lancer, optez pour Production Push SSL Certificate.

main-qimg-904366b0d4adda2de6138af90c7e0e01.webp

Dans l'étape suivante, sélectionnez le fichier .cert que nous avons créé précédemment. Générez et téléchargez le certificat SSL.

main-qimg-8efd75e606b03c867eb09532428dbba0.webp main-qimg-7ba1aa6a8ec13145ad5496d4aa8e964b.webp

Double-cliquez sur le certificat SSL pour l'installer. Vous le trouverez dans votre liste de certificats. Vous pouvez faire un clic droit sur le certificat SSL Apple et l'enregistrer en tant que fichier P12.

main-qimg-1500562c6af3d33916ec26c854a627a5.webp

Ne saisissez pas de mot de passe d'exportation lorsque vous y êtes invité ! Laissez les deux champs vides et cliquez sur OK.

main-qimg-87cd31f539192cd3bdac49ab8094b5ac.webp

  • Profil de provisionnement pour cet ID d'app

Retournez sur le portail de développement Apple jusqu'au profil de provisionnement. Vous pouvez utiliser un App ID existant et un profil de provisionnement existant. Mais vous devez le régénérer et le réinstaller. Si vous voulez en créer un nouveau, sélectionnez nouveau profil.

main-qimg-c100ac9189ae71bfaee55f92649e3d21.webp

Remplissez toutes les informations et sélectionnez votre certificat SSL, l'identifiant de l'app et l'appareil avec lequel vous allez faire des tests. Soumettez pour créer le nouveau profil.

main-qimg-9cd1f7fa6b94e2967fbb5e6a179fc1b4.webp

Téléchargez le profil que vous avez créé et double-cliquez dessus pour l'installer sur votre ordinateur. L'utilitaire de votre iPhone vous invitera à ajouter le nouveau profil. Faites-le et fermez cette app.

main-qimg-bb10930d82bab593f5f8092b14359fe7.webp

  • Configurer l'app Parse en utilisant le certificat SSL généré

Pour commencer à utiliser la fonctionnalité Push, vous devez en informer back{4}app. Pour ce faire, allez dans votre app sur le tableau de bord. Allez dans l'onglet paramètres. Sous celui-ci, vous avez les paramètres des notifications Push iOS. Sélectionnez le certificat .p12 que vous avez généré. Cliquez sur développement ou production selon le cas. Si vous voulez que l'app elle-même lance le push, cliquez sur yes sous Client push enabled.

Commencez par configurer les paramètres du projet de votre application Xcode's. Nous'devrons nous assurer que l'App ID et le profil de provisionnement sont tous deux configurés correctement.

Sélectionnez votre projet dans le navigateur de projet, puis sélectionnez votre cible d'application dans la fenêtre principale de l'éditeur. Assurez-vous que "Général" est sélectionné en haut.

main-qimg-66870ac19da940b481f49e0950d70484.webp

Modifiez le champ Bundle Identifier sous Identity pour qu'il corresponde à votre App ID's Bundle Identifier (ex. com.example.MyParsePushApp). Xcode peut vous avertir à ce stade si vous n'avez pas configuré votre profil de provisionnement correctement.

main-qimg-be7e471ddac6578f5649af3d64ee9a5e.webp

Cliquez sur "Capacités" et activez les notifications Push. Encore une fois, Xcode vous fera savoir s'il y a des problèmes qui nécessitent votre attention. Cliquez sur "Build Settings" et trouvez le champ "Code Signing Identity". Ce champ doit être défini sur "iOS Developer" si vous'testez contre le développement, ou "iOS Distribution" si vous'testez en production ou construisez votre application pour l'App Store.

Vérifiez que le certificat de provisionnement est configuré correctement dans votre application. Ensuite, voici comment vous pouvez configurer la notification Push.

Voici les changements que vous devez faire dans app delegate afin de recevoir des notifications push.

Appeler la méthode registerForRemoteNotifications pour enregistrer l'appareil actuel pour le push.

Si l'enregistrement est réussi, la méthode de rappel application:didRegisterForRemoteNotificationsWithDeviceToken doit être implémentée. Cette méthode est appelée après l'enregistrement réussi du périphérique.

Pour notifier le Push, appelez la méthode storeDeviceToken sur l'objet PFPush.

Suivant, abonnez l'utilisateur au canal de diffusion en utilisant la méthode subscribeToChannelInBackground avec une chaîne vide.

Si le périphérique ne parvient pas à s'enregistrer, vous pouvez appeler la méthode didFailToRegisterForRemoteNotificationWithError pour transmettre l'erreur. Imprimez un message d'erreur approprié. Celui-ci s'affiche si l'application s'exécute en avant-plan.

Mais si elle s'exécute en arrière-plan, nous pouvons la gérer en utilisant l'application didReceiveRemoteNotification. Cela permet d'afficher le contenu de la notification modale.

main-qimg-e6751fdd1ec1a7c97c39c95e4cd0537b.webp

Après cela, construisez votre application. Branchez votre appareil iOS. Exécutez-la et fermez l'écran.

Dans votre application, allez dans l'onglet Notifications push. Envoyez un message type sur le canal de diffusion. Check this notification on your iOS phone.

Disclaimer, I´m a cofounder at www.back4pp.com