Android
Push Notifications
Intégrer Cloud Code pour les notifications push Parse
16 min
envoyer des notifications push parse en utilisant le cloud code introduction cette section explique comment vous pouvez envoyer des notifications push en utilisant le cloud code via back4app voici à quoi cela ressemblera à tout moment, vous pouvez accéder au projet android complet construit avec ce tutoriel sur notre https //github com/back4app/android cloud code push prérequis pour compléter ce tutoriel, nous avons besoin de https //developer android com/studio/index html une application créée sur back4app remarque suivez le https //www back4app com/docs/get started/new parse app pour apprendre à créer une application parse sur back4app une application android connectée à back4app remarque suivez le https //www back4app com/docs/android/parse android sdk pour créer un projet android studio connecté à back4app suivez les étapes 1 à 5 de https //www back4app com/docs/android/push notifications/parse server push notifications attentivement pour configurer les notifications push pour votre application un appareil (ou https //developer android com/studio/run/managing avds html ) fonctionnant avec le niveau d'api 27 ou supérieur 1 configurer android pour recevoir des notifications push chaque application parse installée sur un appareil enregistré pour les notifications push a un objet associé installation installation l' installation installation est l'endroit où vous stockez toutes les données nécessaires pour cibler les notifications push par exemple, dans votre application, vous pourriez stocker les équipes qui intéressent l'un de vos utilisateurs pour envoyer des mises à jour sur leurs performances enregistrer l' installation installation est également nécessaire pour suivre les événements d'ouverture d'application liés aux push la manière la plus simple de commencer à envoyer des notifications est d'utiliser des canaux cela vous permet d'utiliser un modèle éditeur abonné pour envoyer des notifications push les appareils commencent par s'abonner à un ou plusieurs canaux, et les notifications peuvent ensuite être envoyées à ces abonnés les canaux auxquels un installation installation donné s'abonne sont stockés dans le champ canaux canaux de l' installation installation pour commencer à travailler avec les notifications push, les étapes suivantes sont requises si vous avez téléchargé notre https //github com/back4app/android cloud code push , n'oubliez pas de changer vos identifiants dans le app/src/main/res/values/string xml app/src/main/res/values/string xml fichier et le gcmsenderid gcmsenderid que vous avez obtenu sur firebase dans le androidmanifest xml androidmanifest xml fichier importez les dépendances suivantes 1 // dépendances java 2 import java util arraylist ; 3 // dépendances parse 4 import com parse parse ; 5 import com parse parseinstallation ; 2\ initialisez parse avec parse initialize(this) parse initialize(this) 3\ créez un nouveau tableau de canaux et mettez les canaux auxquels vous souhaitez vous abonner dans cet exemple, le news news canal est créé 4\ ajoutez à votre installation votre gcmsenderid gcmsenderid , obtenu à partir de la https //console firebase google com/?pli=1 , via la commande installation put("gcmsenderid", "your firebase gcm sender id here") installation put("gcmsenderid", "your firebase gcm sender id here") pour savoir comment vous pouvez obtenir cette clé, regardez étape 1 de https //www back4app com/docs/android/push notifications/parse server push notifications 5\ ajoutez l' objet channels objet channels à l' installation installation via la commande installation put("channels", channels) installation put("channels", channels) 6\ enregistrez l'installation dans votre base de données via installation saveinbackground() installation saveinbackground() le code suivant exécute ces étapes 1 parse initialize(this); 2 arraylist\<string> channels = new arraylist<>(); 3 channels add("news"); 4 parseinstallation installation = parseinstallation getcurrentinstallation(); 5 // don't forget to change the line below with the sender id you obtained at firebase 6 installation put("gcmsenderid", "your firebase gcm sender id here"); 7 installation put("channels", channels); 8 installation saveinbackground(); 2 créez votre cloud code pour en savoir plus sur la façon de commencer avec cloud code regardez https //www back4app com/docs/get started/cloud functions créez un js js fichier pour mettre votre cloud code dans cet exemple, un main js main js fichier est créé définissez une fonction cloud, en utilisant parse cloud define parse cloud define , pour appeler la notification push dans cet exemple, cette fonction est appelée parse push send parse push send il est nécessaire d'utiliser la clé maître dans cette opération le code suivant exécute ces étapes parse server 3 x //main js 1 parse cloud define("pushsample", (request) => { 2 3 return parse push send({ 5 channels \["news"], 6 data { 7 title "hello from the cloud code", 8 alert "back4app rocks!", 9 } 10 }, { usemasterkey true }); 11 }); parse server 2 x //main js 1 parse cloud define("pushsample", function (request, response) { 2 parse push send({ 3 channels \["news"], 4 data { 5 title "hello from the cloud code", 6 alert "back4app rocks!", 7 } 8 }, { 9 success function () { 10 // push was successful 11 response success("push sent"); 12 console log("success push sent"); 13 }, 14 error function (error) { 15 // push was unsucessful 16 response error("error with push " + error); 17 console log("error " + error); 18 }, 19 usemasterkey true 20 }); 21 }); 3 télécharger vers cloud code allez à votre application sur https //www back4app com/ et cliquez sur tableau de bord tableau de bord trouvez le code cloud code cloud et cliquez sur fonctions et hébergement web fonctions et hébergement web cela ressemble à ceci 3\ téléchargez ou créez un nouveau fichier (vous pouvez également modifier le main js main js fichier directement dans le navigateur) ensuite, cliquez sur déployer déployer comme montré ici 4 appeler le code cloud depuis l'application android importez les dépendances suivantes 1 // dépendances java 2 import java util hashmap ; // cela inclut l'objet hasmap que la fonction cloud 4 doit appeler 3 // dépendances parse 4 import com parse functioncallback ; 5 import com parse parsecloud ; 6 import com parse parseexception ; 2\ appelez le parsecloud callfunctioninbackground parsecloud callfunctioninbackground sur la pushsample pushsample fonction cloud 1 final hashmap\<string, string> params = new hashmap<>(); 2 // calling the cloud code function 3 parsecloud callfunctioninbackground("pushsample", params, new functioncallback\<object>() { 4 @override 5 public void done(object response, parseexception exc) { 6 if(exc == null) { 7 // the function was executed, but it's interesting to check its response 8 alertdisplayer("successful push","check on your phone the notifications to confirm!"); 9 } 10 else { 11 // something went wrong 12 toast maketext(mainactivity this, exc getmessage(), toast length long) show(); 13 } 14 } 15 }); le alertdisplayer alertdisplayer méthode utilisée dans l'exemple ci dessus est la suivante 1 private void alertdisplayer(string title ,string message ){ 2 alertdialog builder builder = newalertdialog builder (mainactivity this ) 3 settitle ( title ) 4 setmessage ( message ) 5 setpositivebutton ( "ok" , new dialoginterface onclicklistener () { 6 @override 7 public void onclick(dialoginterface dialog , int which ) { 8 dialog cancel (); 9 } 10 }); 11 alertdialog ok = builder create (); 12 ok show (); 13 } 3\ testez si les notifications push sont envoyées en appelant la fonction ci dessus pendant que l'appareil est ouvert 5 appeler le code cloud depuis l'api rest l'api rest fournit un moyen rapide et facile de tester si votre fonction cloud fonctionne utilisez simplement le code ci dessous dans votre terminal ou invite de commande cliquez sur pour en savoir plus sur la façon de commencer avec la ligne de commande dans https //www digitalocean com/community/tutorials/an introduction to the linux terminal , https //blog teamtreehouse com/introduction to the mac os x command line ou https //www bleepingcomputer com/tutorials/windows command prompt introduction/ curl x post h "x parse application id your app id here" \\ h "x parse rest api key your rest api key here" \\ h "content type application/json" \\ d '{ // mettez les paramètres de la fonction ici au format json }' \\ https //parseapi back4app com/functions/pushsample pour tester les notifications push, utilisez simplement le code rest pendant que l'appareil est ouvert c'est fait ! à ce stade, vous pouvez envoyer des notifications push en utilisant le cloud code via back4app !