+ Répondre à la discussion Actualité déjà publiée
Affichage des résultats 1 à 3 sur 3
  1. #1
    Expert Confirmé Sénior


    Homme Profil pro
    Inscrit en
    mai 2007
    Messages
    3 079
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Algérie

    Informations forums :
    Inscription : mai 2007
    Messages : 3 079
    Points : 19 498
    Points
    19 498

    Par défaut [Tutoriel] BroadCast Receiver sous Android

    Nazim Benbourahla vous présente un nouveau tutoriel intitulé:

    BroadCast Receiver sous Android


    Ce tutoriel va aborder les broadCast Receiver sous Android. Nous allons commencer par expliquer le principe des broadcast receiver, puis nous allons faire un petit exemple d'un broadcast receiver qui reçoit les messages du téléphone.

    Bonne lecture

  2. #2
    Membre Expert
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : juillet 2006
    Messages : 871
    Points : 1 069
    Points
    1 069

    Par défaut

    Un adendum intéressant pourrait être de montrer comment déclarer un BroadcastReceiver directement comme attribut de la classe de l'activité et de l'enregistrer a la volée dans le onCreate au lieu de l'insérer dans le Manifeste.

    Ce qui permet d'avoir un "effet" que durant la vie de l'activité.

    genre:
    Code :
    1
    2
    3
    4
    5
    6
    	private BroadcastReceiver SMSReceiver = new BroadcastReceiver() {
    		@Override
    		public void onReceive(Context arg0, Intent arg1) {
    			//Do stuff
    		}	
    	};
    Puis dans le onCreate:

    Code :
    registerReceiver(SMSReceiver , new IntentFilter("android.provider.Telephony.SMS_RECEIVED"));
    Et dans le finish():
    Code :
    unregisterReceiver(SMSReceiver );
    C'est le signe d'un fou, qu'avoir honte d'apprendre
    Ubuntu 10.04 Lucid Lynx @home
    LE guide libre Linux & Ubuntu pour tous : Simple comme Ubuntu

  3. #3
    Invité de passage
    Inscrit en
    octobre 2005
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : octobre 2005
    Messages : 15
    Points : 4
    Points
    4

    Par défaut Problème de mise en oeuvre

    Bonjour.
    Après avoir suivi le tuto cité plus haut, je n'arriva a aucun resultat.

    Le projet compile et s'installe sur l’émulateur mais lors de la réception d'un SMS je n'ai que la notification d'origine.

    J'ai donc simplifié le code au maximum en enlevant le traitement lors de la réception de l'évènement, mais rien de concluant.

    Mon manifest :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.srdep"
          android:versionCode="1"
          android:versionName="1.0">
        <uses-sdk android:minSdkVersion="12" />
        <uses-permission android:name="android.permission.READ_SMS" />
    	<uses-permission android:name="android.permission.RECEIVE_SMS" />
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <receiver android:name="com.srdep.SMSReceiver" class="com.test.SMSReceiver">
                <intent-filter android:priority="100">
            <action android:name="android.provider.Telephony.SMS_RECEIVED" />
                </intent-filter>
            </receiver>
        </application>
    </manifest>

    Mon receiver :

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    package com.srdep;
     
    import android.content.BroadcastReceiver;
    import android.content.Context;
    import android.content.Intent;
    import android.util.Log;
    import android.widget.Toast;
     
    public class SMSReceiver extends BroadcastReceiver 
    {
        public static final String TAG = "OnUSBAnt";
     
        @Override
        public void onReceive(Context context, Intent intent) 
        { 
            Toast.makeText(context, "Message : " + "SMS Reçu", Toast.LENGTH_LONG).show();
        }
    }
    Mercic d'avance

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •