Comment interragir avec les composants android avec les intents et les intent-filters

Si vous voullez lancer un appel , envoyer un email ou un sms , ouvrir une url web dans le navigateur ou intéragir quand le téléphone s’éteint sous android vous devez utiliser les Intents

Definition

Un intent est un message qu’on envoie au système android pour

  • lancer une activity
  • lancer un service
  • envoyer un evénement aux broadcast-receivers

Cela permet

  • d’un composant precis d’appeler n’importe lequel composant de tout les applications installé sur l’appareil
  • de traiter les intents l’un après l’autre sous la forme d’une file d’attente

On distingue deux type d’Intents

  • Les Intents explicite : cible directement l’activity ou le services à appeler
  • Les Intents implicite décrit un action à realiser et le système d’exploitation choisira quel composent à appeler

Les intent sont défine par la classe java android.content.Intent et

Comment déclarer un intent

un intent se déclare de façon

 Intent 

  • component
  • action : une chaine de caratère précisant l’action à réaliser ( optionnel si explice )
  • Catégorie:
  • data : Uri qui cible oû l’action doit porter (optionnel )
  • pubextra : bundle

Comment éxécuter des taches de fond avec les service

Déclarer un explicite intent

Pour de

nous décla

  Intent( context ,  ExampleActivity::class.java   )  

après

Comment déclarer un implicite intent

Example d’une déclaration d’un explicite intent

déclarer un appel

Intent( context , MyActivity::class.java  ) 

Example d’un implicite intent

envoyer un SMS

envoyer une email

ouvrir un lien web dans le navigateur

Recevoir un implicite Intent dans un composant les intent-filter

Afin d’éviter de lancer tous les activities , tout les services, ou envoyer un évément à tout les broadcast-receiver et provoquer un black out les composants android ne peuvent pas normalement intéragir avec appeler. par un intent-filter

i implémenter un intent-filter définie par

  • est implémenté par la balise <intent-filter> dans le composant sein du fichier android.manifest.xml .
  • prend comme parametre les balises <action> ,<catégorie> et <data> correspondant aux même paramête de la classe Intent

<intent-filter>
        <action android:name="android.intent.action.SEND"/>
        <category android:name="android.intent.category.DEFAULT"/>
        <data android:mimeType="text/plain"/>
    </intent-filter>

List fe

Lien si Vous allez voir plus lion

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *