04 septembre 2020
publié par 

Apple propose une nouvelle API pour envoyer les notifications Push. Cette nouvelle API utilise le protocole HTTP/2, et sera la seule autorisée à partir de novembre 2020 :
https://developer.apple.com/news/?id=11042019a&1572897862

 

 

La fonction NotifPushEnvoie du WLangage a donc été adaptée afin d'utiliser cette nouvelle API. Les changements d'API de ce type sont très fréquents, et dans le cas général transparents au niveau du WLangage. Mais dans ce cas précis, les attendus de Apple sont différents. Le prototype de la fonction NotifPushEnvoie a donc du être adapté afin d'accepter les nouveaux paramètres demandés par Apple.

 

Les applications ou sites chargés d'envoyer des notification Push, doivent donc utiliser la nouvelle API avant novembre 2020 afin de conserver la possibilité d'envoyer des notifications.

 

Afin de générer une application avec la nouvelle API, il faut utiliser WINDEV ou WEBDEV 25 "Update 4" (250090F).

Une fois la mise à jour en place, il faut modifier l'appel de la fonction NotifPushEnvoie pour corriger l'erreur "Aucune syntaxe ne correspond".

 

L'appel était de la forme suivant (extrait de l'exemple WD Envoi Push) :

NotifPushEnvoie(ConstruitNotification(Vrai),tabIdentifiantsAEnvoyer,tabMoncertif[1],nTypeEnvoi)

 

Il faut le transformer afin d'avoir :

NotifPushEnvoie(ConstruitNotification(Vrai),tabIdentifiantsAEnvoyer, sEmplacementCertificat, sPasseCertificat, sTopic_Id, nTypeEnvoi)

 

Avec pour les nouveaux paramètres :

  • sEmplacementCertificat : une chaîne de caractères contenant le chemin d'accès complet au fichier contenant le certificat. Si le fichier certificat est intégré à la bibliothèque de l'application lors de la création de l'exécutable, il ne sera pas nécessaire de déployer le certificat à côté de l'exécutable. Le certificat utilisé sera celui intégré à l'exécutable. Dans ce cas il faut penser à recréer l'exécutable avec un nouveau certificat lorsque ce dernier expire.
  • sPasseCertificat : une chaîne contenant le mot de passe du certificat.
  • sTopic_Id : une chaîne contenant le "Topic ID" qui correspond à l'identifiant du Bundle donné à l'étape "Informations générales" de l'assistant de génération du projet Xcode.

La nouvelle API est déjà en place au niveau de Apple, il est donc possible de déployer dès maintenant la mise à jour de l'application utilisant la nouvelle syntaxe de NotifPushEnvoie.

 

< Retour

3 commentaires

Frédéric
29/10/2020 - 09:44 - Répondre
Bonjour, La liste des correctifs n'est plus disponible dans les ressources pratiques. On ne voit les correctifs que jusqu'à la version 24 !! Cordialement,

LOIC HAMEL
29/10/2020 - 10:50 - Répondre
Le correctif a été intégré à la version Update 4 (250090F) de WINDEV. Cette version est actuellement en niveau 2 et disponible en téléchargement.

roumegou
03/11/2020 - 15:54 - Répondre
être obligé de migrer sites et webservices juste pour ça !!! Nous avons un site back office en 22 et un webservice en 24. Une migration entrainera des problèmes sur tous nos clients. Ne pas avoir de correctifs pour les versions précédentes est vraiment totalement anormal. On reste comme d'habitude les victimes de ces pratiques répréhensibles chez Apple comme chez Pcsoft

Publier un commentaire : 
Votre adresse email ne sera pas publiée


© 2020 PC SOFT. Tous droits réservés. Réalisé  avec WEBDEV