View
51
Download
0
Category
Preview:
DESCRIPTION
Développement Mobile : Android. Cours N°6 Application sur les listview et les Broadcast Receivers Rami AMRI (rami.amri@gmail.com) FST 2011/2012. Les Broadcast Receivers. Pour pouvoir recevoir des intents , Android vous permet de créer une classe qui implémente BroadcastReceiver . - PowerPoint PPT Presentation
Citation preview
Développement Mobile : Android
Cours N°6Application sur les listview et les Broadcast Receivers
Rami AMRI (rami.amri@gmail.com)FST
2011/2012
Pour pouvoir recevoir des intents, Android vous permet de créer une classe qui implémente BroadcastReceiver.
Ces objets sont conçus pour recevoir des intents (intentions) et appliquer des comportements spécifiques à votre code.
Les Broadcast Receivers
Un BroadcastReceiver ne possède qu’une seule méthode onReceive() que votre classe devra implémenter.
Un BroadcastReceiver ne vit que le temps de traiter votre onReceive().
Les Broadcast Receivers
lorsque le BroadcastReceiver est implémenté sur un composant qui a une durée de vie assez longue, comme une activité ou un service : dans ce cas, le récepteur vivra aussi longtemps que son « hôte »
faut appeler registerReceiver() dans la méthode onResume() ou onCreate() de l’activité pour annoncer son intérêt pour une intention,
Les Broadcast Receivers
Le système Android envoie l’intention à tous les BroadCast Receiver abonnées par ordre de priorité (priorité de votre BroadCast dans le fichierAndroidManifest.xml).
Si un BroadCast souhaite interrompre la réception du Broadcast à ceux d’un niveau inferieure de priorité, il faut utiliser la méthode abortBroadcast().
Les Broadcast Receivers
Exemple: Un BR qui « écoute » la réception d’un sms
Les Broadcast Receivers
Le Broadcast Receiver doit être déclarer dans le fichier manifest.xml
Les Broadcast Receivers
Permissions accordées au Broadcast receiver
Le filtre des intents relatif à la réception de messages
Les Broadcast Receivers
On Souhaite crée une application qui intercepte les SMS reçus et qui les affiche dans une listView,
Nous allons d’abord créer notre projet « SMSReceiver » qui contiendra une listView et un brodcast Receiver qui se chargera « d’ecouter » et réagir à la réception d’un SMS
Application
Application
Application Nous allons d’abord créer ListView dans
notre activité principale qui héritera de ListActivity
Nous allons ajouter notre listView dans le main.xml
Application Ensuite dans le manifest, nous allons
ajouter les permissions nécessaires
Dans le onCreate de notre application, nous allons nous abonner au broadcast receiver
Application Créer un adapter et l’associé à notre
listView
Sans oublier
Application Maintenant, dans le onReceive de notre
Brodcast Receiver, nous allons recupérer les SMS et les ajouter à notre listView,
Pour cela, nous allons vérifier que l’action de l’intent reçu correspond à la réception d’un SMS
Sans oublier de mettre avant le onReceive()
Application Maintenant, si c’est bien le cas, nous allons
récupérer les SMS qui sont « contenus » dans les Extra de l’intent
Remarque : le format d’un SMS est pdus (protocol discription unit )
Faudra, récupérer les SMS et les parser pour récupérer le numéro de téléphone et le corps du message
Application
Application Il ne reste plus qu’a ajouter le message dans
la listView
Et notifier le changement de données et recharger la liste automatiquement.
Recommended