Hervéé Posted March 7, 2011 Share Posted March 7, 2011 Bonjour, Je dis tout de suite que j'ai bien lu http://developer.android.com/guide/topics/ui/notifiers/notifications.html et donc que j'espère pouvoir me débrouiller sur la réalisation même d'une notification dans la status bar. Ma question est plutôt sur l'initiateur. Si l'initiateur veut notifier quelque chose, comment ça se passe, quel système existe-t-il, que met-on à sa disposition pour lancer la notification ? Je suppose qu'on peut tout imaginer : formulaire sur le web, SMS, RSS, etc. Mais existe-t-il des choses qui se sont spécialisées là dessus ? Par exemple à partir de la notification initiateur, si au lieu d'envoyer une notification android on veut envoyer un SMS à tous les abonnés ? (ou n'importe quoi d'autre pour l'avertir ? ) Merci. Link to comment Share on other sites More sharing options...
Pierre87 Posted March 7, 2011 Share Posted March 7, 2011 Je ne sais pas ce que tu entends par "initiateur", mais tes questions me paraissent assez "nébuleuses" :/ (en gros, je n'ai rien compris) Link to comment Share on other sites More sharing options...
Hervéé Posted March 8, 2011 Author Share Posted March 8, 2011 OK, merci de me le dire. :emo_im_angel: Bon je vais essayer avec un exemple. J'ai un restaurateur qui présente son resto dans une appli android que j'aurais faite. Il montre ses menus, ses salles, etc. Chaque fois qu'il change de menu, il voudrait alerter tout ceux qui ont son appli, en leur envoyant une notification. Moi qui fait l'appli je vois très bien comment faire une notification dans l'espèce de machin qui se déroule en glissant vers le bas. La question que je me pose est comment est-ce que le restaurateur fera pour déclencher ce système ? Est-ce que je devrais lui dire d'envoyer un SMS à toutes les applis et, sur réception de ce SMS alors je déclanche ma notification ? (mais alors ça fait double notification : celle du SMS et la mienne) Est-ce que je dois mettre un fichier RSS quelque part, avec un formulaire pour que le restorateur puisse intervenir, et les applis android vont lire périodiquement cette base ? (mais risque de coût de transmission) Y a-t-il d'autres systèmes ? Voilà. Est-ce que c'est plus clair ? Link to comment Share on other sites More sharing options...
Pierre87 Posted March 8, 2011 Share Posted March 8, 2011 Je comprends mieux :) Il y a 2 solutions: - Consulter une source de données de temps en temps (intervalle régulier généralement) - Utiliser le push Android (dispo sur 50% des téléphones) La première solution est plus simple techniquement, il faut faire attention à ne pas avoir un intervalle trop bas (pompe la batterie) Je n'ai jamais essayé la deuxième, mais le push n'est dispo que depuis Android 2.2 (50% de part de marché) Link to comment Share on other sites More sharing options...
Hervéé Posted March 8, 2011 Author Share Posted March 8, 2011 Par rapport à la première solution, c'est à dire qu'on peut conserver une appli en mémoire, que le système déclenche à intervalle régulier ? Et, si j'ai les droits, cette appli peut se connecter au web et aller lire un flux rss ou n'importe quoi d'autre ? Et y a-t-il un tutorial sur cette chose ? Merci. Link to comment Share on other sites More sharing options...
Pierre87 Posted March 8, 2011 Share Posted March 8, 2011 Je vais t'expliquer les bases, mais il faut que tu lises la doc aussi. Regarde du côté de AlarmManager. Il faut que tu programmes une alarme à intervalle régulier, qui déclenche un PendingIntent, qui lui même déclenche un Broadcast. Ce Broadcast doit être "écouté" depuis ton Manifest. Quand tu reçois ce Broadcast, il suffit de faire ta requête HTTP pour déterminer si tu as de nouvelles infos. Ainsi, l'appli peut être tuée/libérée par le système entre temps Mais elle est relancé automatiquement au moment où le Broadcast est reçu Link to comment Share on other sites More sharing options...
Hervéé Posted March 9, 2011 Author Share Posted March 9, 2011 OK grand merci je m'en occupe. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.