61
Programmation Android V. Intents / Intent Filters 1 / 68 Cours Android - F. Michel N

V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Programmation AndroidV. Intents / Intent Filters

1 / 68Cours Android - F. Michel

N

Page 2: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Plan

1 Définition

2 Cas d’utilisation

3 Intent explicite

4 Intent implicite

5 Réception d’un Intent implicite : <intent-filter>

6 Résolution des intents implicites

7 Quelques exemples d’Intents implicites usuels

2 / 68Cours Android - F. Michel

N

Page 3: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Définition

android.content.Intent API

Définition

Un Intent est une demande d’action à réaliser par un autrecomposant de l’OS (activity, service, content provider, broadcastreceiver )

En outre, l’Intent contient les données à utiliser par l’action.

4 / 68Cours Android - F. Michel

N

Page 4: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Cas d’utilisation

android.content.Intent API

Cas d’utilisation 1 : démarrage d’une activité (avec UI)

1 startActivity(Intent)

2 startActivityForResult(Intent, int)

L’intent décrit l’activité à lancer

(2) le résultat obtenu est transmis à l’activité initiatrice via un autreintent passé à sa méthodeonActivityResult (int requestCode, intresultCode, Intent data)

6 / 68Cours Android - F. Michel

N

Page 5: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Cas d’utilisation

android.content.Intent API

Cas d’utilisation 2 : démarrage d’un service (sans UI)

1 startService(Intent)

2 bindService(Intent, ServiceConnection, int)

L’intent décrit le service à lancer

(2) : pour les services de type client / serveur (dépendance entrel’application et le service)

7 / 68Cours Android - F. Michel

N

Page 6: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Cas d’utilisation

android.content.Intent API

Cas d’utilisation 3 : notification d’un événement à tout l’OS(broadcast)

1 sendBroadcast(Intent)

2 sendOrderedBroadcast(Intent, String)

L’intent décrit l’événement

exemples : wifi on/off, boot terminé, prise de vue effectuée, batteriecritique, etc.

(2) : avec un ordre de préférence (géré par le système) sur lesreceveurs

8 / 68Cours Android - F. Michel

N

Page 7: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent explicite

Intent explicite

Principe

Définit le composant à activer en spécifiant explicitement son nomJava complet (package + classe)

exemples : un composant de l’application, un service identifié, etc.

par exemple par l’intermédiaire d’un objet de type Class :utilisation du constructeur Intent(Context, Class<?>) :

10 / 68Cours Android - F. Michel

N

Page 8: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent explicite

Intent explicite, exemples de construction :

voir aussi Intent.setComponent(android.content.ComponentName)

voir aussi Intent.setClass(android.content.Context, java.lang.Class<?>)

voir aussi Intent.setClassName(java.lang.String, java.lang.String)

11 / 68Cours Android - F. Michel

N

Page 9: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent explicite

Intent explicite, exemples de construction :

voir aussi Intent.setComponent(android.content.ComponentName)

voir aussi Intent.setClass(android.content.Context, java.lang.Class<?>)

voir aussi Intent.setClassName(java.lang.String, java.lang.String)

12 / 68Cours Android - F. Michel

N

Page 10: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent explicite

Intent explicite

Remarque

Si le composant cible n’est pas spécifié, l’intent est considéré defacto comme implicite

Lors de l’appel à un service, il est fortement recommandé detoujours spécifier celui-ci explicitement afin d’être certain du serviceactivé

13 / 68Cours Android - F. Michel

N

Page 11: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent implicite

Intent implicite

Principe

Ne spécifie pas le composant visé

Demande à l’OS l’exécution d’une action standardisée, par un autrecomposant

Pour capter ce genre de sollicitations, un composant doits’enregistrer dans l’OS comme capable de gérer ce type d’action(manifest : intent-filter)

Si plusieurs composants sont enregistrés pour une même action,un choix est présenté à l’utilisateur

Exemples :- montrer une localisation sur une carte- partager → envoyé avec (réseau social, texto, mailer. . . )- visualiser une URL- etc.

15 / 68Cours Android - F. Michel

N

Page 12: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent implicite

Intent implicite : cycle de vie

1 activité A : startActivity avec un Intent implicite

2 l’OS parcourt les applications pour trouver les intent-filtercorrespondant à l’action demandée

3 l’OS démarre l’activité trouvée, B

16 / 68Cours Android - F. Michel

N

Page 13: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent implicite

Intent implicite, exemple de construction :

Attention : si aucune application n’est disponible et que la vérificationn’est pas effectuée alors l’application plante

17 / 68Cours Android - F. Michel

N

Page 14: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent implicite

Action.SEND, plusieurs applications :

18 / 68Cours Android - F. Michel

N

Page 15: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Intent implicite

Forcer la sélection avec createChooser

19 / 68Cours Android - F. Michel

N

Page 16: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Réception d’un Intent implicite : <intent-filter>

Réception d’un Intent implicite

Déclaration d’un intent filter

pouvoir recevoir un intent implicite, il faut déclarer un<intent-filter> dans le manifest

<intent-filter> définit le type d’intent accepté enspécifiant :

type de l’action : balise <action>catégorie de l’action : balise <category>type de donnée accepté (optionnel) : balise <data> + diversattributs (scheme, host, port, path, etc.)

Note : Un intent explicite est toujours délivré, quelque soit le filtreassocié au composantNote : <category> est obligatoire pour pouvoir recevoir un intentimplicite (CATEGORY_DEFAULT au pire)

21 / 68Cours Android - F. Michel

N

Page 17: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Réception d’un Intent implicite : <intent-filter>

Exemple de <intent-filter>

Une activité capable de traiter les Action.SEND (partage) dont lecontenu est de type texte :

Note : Il est possible d’avoir plusieurs balises de chaque type pourélargir le champ des intents capturésNote : Il est possible de définir plusieurs filtres différents pour unemême activité

22 / 68Cours Android - F. Michel

N

Page 18: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Réception d’un Intent implicite : <intent-filter>

Autres exemples

Pour un launcher classique :

23 / 68Cours Android - F. Michel

N

Page 19: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Réception d’un Intent implicite : <intent-filter>

Autres exemplesDeux filtres pour une même activité :

24 / 68Cours Android - F. Michel

N

Page 20: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Résolution des intents : recherche d’uneapplication

La recherche d’une activité compatible à un intent se fait selonla manière dont un filtre définit :

L’action

La description des données contenues dans l’intent (URI et type)

La catégorie de l’intent

26 / 68Cours Android - F. Michel

N

Page 21: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Filtrage de l’action

Un filtre peut déclarer de zéro à plusieurs actions :

réussite du test lié à l’action

L’action de l’intent doit correspondre à l’une des actions spécifiéesdans le filtre

Si le filtre ne définit aucune action, tous les intents ratent le test

27 / 68Cours Android - F. Michel

N

Page 22: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Filtrage de la catégorieUn filtre peut déclarer de zéro à plusieurs catégories :

réussite du test lié à la catégorie

Toutes les catégories définies dans l’intent doivent correspondre àl’une des catégories spécifiées dans le filtre. L’inverse n’est pasnécessaire.

Un intent sans catégorie passe toujours ce test, car il estautomatiquement associé à la catégorie CATEGORY_DEFAULT

Ainsi, un filtre doit au moins avoir la catégorieCATEGORY_DEFAULT pour pouvoir recevoir des intents implicites

28 / 68Cours Android - F. Michel

N

Page 23: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Filtrage du type des données

Un filtre peut déclarer de zéro à plusieurs types de données :

29 / 68Cours Android - F. Michel

N

Page 24: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Détails d’une balise <data>

<data> contient

android:mimeType→ type de données MIME type

android:scheme→ structure acceptée pour l’URI, pourchacune de ses parties :<scheme>://<host>:<port>/<path>

content://com.example.project:200/folder/subfolder/etc

scheme = content

host = com.example.project

port = 200

path = /folder/subfolder/etc

30 / 68Cours Android - F. Michel

N

Page 25: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Filtrage de l’URI

La description de chaque partie de l’URI est optionnelle mais

si scheme n’est pas spécifié, host est ignoré

si host n’est pas spécifié, port est ignoré

si scheme et host sont tous les deux absents, path est ignoré

Note : il est possible d’utiliser * pour définir le type de path accepté

31 / 68Cours Android - F. Michel

N

Page 26: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Filtrage global de <data>

Règles d’acceptation : URI + type MIME

Si l’intent ne définit ni l’un ni l’autre, le filtre ne le doit pas non plus

Un intent ne contenant que le MIME est accepté si le filtre ne définitpas d’URI et correspond au MIME

Si l’intent contient les deux, le filtre le doit aussi

le type MIME de l’intent peut être inféré de l’URI. Si le filtre contientuniquement le MIME, il supporte les URI dont le scheme est detype content: et file: (ressource locale)

32 / 68Cours Android - F. Michel

N

Page 27: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Résolution des intents implicites

Autre exemple de filtre courant

Le composant est capable de gérer les URI qui correspondent à desvidéos disponibles depuis une adresse internet :

33 / 68Cours Android - F. Michel

N

Page 28: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

android.provider.AlarmClock.ACTION_SET_ALARM

Créer une alarme AlarmClock

Nécessite d’ajouter dans le manifest :

35 / 68Cours Android - F. Michel

N

Page 29: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

ACTION_SET_ALARM : intent_filter associé

36 / 68Cours Android - F. Michel

N

Page 30: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

android.provider.AlarmClock.ACTION_SET_TIMER

Créer un compte à rebours AlarmClock

Nécessite d’ajouter dans le manifest :

37 / 68Cours Android - F. Michel

N

Page 31: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

ACTION_SET_TIMER : intent_filter associé

38 / 68Cours Android - F. Michel

N

Page 32: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Intent.ACTION_INSERT

Ajouter un événement au calendrier Intent

39 / 68Cours Android - F. Michel

N

Page 33: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

ACTION_INSERT : intent_filter associé

40 / 68Cours Android - F. Michel

N

Page 34: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

MediaStore.ACTION_IMAGE_CAPTURE ou (VIDEO)

Récupérer une image ou une viédo MediaStore

41 / 68Cours Android - F. Michel

N

Page 35: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

MediaStore.ACTION_IMAGE_CAPTURE :

intent_filter associé

42 / 68Cours Android - F. Michel

N

Page 36: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Still image mode

filtre associé :

43 / 68Cours Android - F. Michel

N

Page 37: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Sélection d’un contact :

44 / 68Cours Android - F. Michel

N

Page 38: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Uniquement le numéro d’un contact :

45 / 68Cours Android - F. Michel

N

Page 39: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

À partir de l’URI précédente :Lancer l’affichage un contact :

Lancer l’édition un contact :

46 / 68Cours Android - F. Michel

N

Page 40: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Insertion d’un contact :

47 / 68Cours Android - F. Michel

N

Page 41: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Composer un mail

ACTION_SENDTO (for no attachment)ACTION_SEND (for one attachment)ACTION_SEND_MULTIPLE (for multiple attachments)

48 / 68Cours Android - F. Michel

N

Page 42: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Composer un mail (pas de pièce jointe)

49 / 68Cours Android - F. Michel

N

Page 43: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

filtres associés

50 / 68Cours Android - F. Michel

N

Page 44: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Récupérer un fichier

android.content.Intent

ACTION_GET_CONTENT : copie du fichier

ACTION_OPEN_DOCUMENT : ouverture du fichier géré par uneautre application, URI de type content:

ACTION_CREATE_DOCUMENT : création d’une nouvelle URI detype content:

51 / 68Cours Android - F. Michel

N

Page 45: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Récupérer une photo (URI + données)

52 / 68Cours Android - F. Michel

N

Page 46: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

filtre associé

53 / 68Cours Android - F. Michel

N

Page 47: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Ouvrir une photo (URI + données)

54 / 68Cours Android - F. Michel

N

Page 48: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Vélo tracking

filtre associé :

55 / 68Cours Android - F. Michel

N

Page 49: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Course à pied

filtre associé :

56 / 68Cours Android - F. MichelN

Page 50: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Rythme cardiaque

filtre associé :

57 / 68Cours Android - F. MichelN

Page 51: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Marche à pied

58 / 68Cours Android - F. Michel

N

Page 52: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Actions localisées

filtre associé :

59 / 68Cours Android - F. Michel

N

Page 53: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Actions localisées

Schéma des URI de type geo :

geo :latitude,longitude → geo :47.6,-122.3

geo :latitude,longitude ?z=zoom → geo :47.6,-122.3?z=11

geo :0,0?q=lat,lng(label) → geo :0,0 ?q=34.99,-106.61(Treasure)

geo :0,0?q=my+street+address →geo :0,0?q=1600+Amphitheatre+Parkway%2C+CA

60 / 68Cours Android - F. Michel

N

Page 54: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

filtre associé

61 / 68Cours Android - F. Michel

N

Page 55: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Média

62 / 68Cours Android - F. Michel

N

Page 56: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

filtre associé

63 / 68Cours Android - F. Michel

N

Page 57: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Initier un appel

Nécessite<uses-permission

android:name="android.permission.CALL_PHONE"/>

64 / 68Cours Android - F. Michel

N

Page 58: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

filtre pour activer la recherche dans uneapplication

65 / 68Cours Android - F. Michel

N

Page 59: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Recherche web

66 / 68Cours Android - F. Michel

N

Page 60: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Quelques exemples d’Intents implicites usuels

Autres

67 / 68Cours Android - F. Michel

N

Page 61: V. Intents / Intent Filters · 2019. 2. 18. · Une activité capable de traiter les Action.SEND (partage) dont le contenu est de type texte : Note : Il est possible d’avoir plusieurs

Conclusion

Résumé global

Il existe déjà énormément d’intents implicites ! Utilisez la doc pourvous y retrouver : android.content.Intent

Ce cours reprend largement les tutoriaux en ligne proposés par Google : Android developers

68 / 68Cours Android - F. Michel

N