0% ont trouvé ce document utile (0 vote)
137 vues37 pages

Android Activity PDF

Transféré par

GhâdaAouini
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
137 vues37 pages

Android Activity PDF

Transféré par

GhâdaAouini
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Programmation Android

III. le concept d’Activité / l’objet


Intent

Cours Android - F. Michel


1 / 42
N
Plan

1 La notion d’activité

2 Ajout d’une activité

3 Lancement d’une activité

4 L’objet [Link]

5 Implicit Intent

Cours Android - F. Michel


2 / 42
N
La notion d’activité

Activity

Définition
Une activité (sous classe d’Activity) représente un unique écran de
l’UI d’une application Android

Une application contient en général plusieurs activités. Par exemple,


une application de courriel : une activité pour la composition, une
activité pour la lecture, indépendante l’une de l’autre.

Ces activités peuvent être lancées par d’autres applications. Par


exemple pour partager une image (gallery app) via un courriel
(mailer app)

Tout l’intérêt d’Android est de faciliter l’utilisation de l’ensemble des


composants présents dans le système, et donc notamment ndes
différentes activités fournies par les applications.

Cours Android - F. Michel


4 / 42
N
La notion d’activité

Définition des activités d’une application


[Link] :

Cours Android - F. Michel


5 / 42
N
Ajout d’une activité

Étape 1 : ajout dans le manifest

[Link] :

Cours Android - F. Michel


7 / 42
N
Ajout d’une activité

Étape 2 : création de la classe implémen-


tant l’activité

Cours Android - F. Michel


8 / 42
N
Ajout d’une activité

Étape 2 : résultat

[Link]

Cours Android - F. Michel


9 / 42
N
Ajout d’une activité

Étape 3 : création de l’UI de l’activité à


l’aide d’un nouveau fichier XML (layout)

Cours Android - F. Michel


10 / 42
N
Ajout d’une activité

Étape 3 : création de l’UI de l’activité

Cours Android - F. Michel


11 / 42
N
Ajout d’une activité

Étape 3 : ajout d’un champ texte

Cours Android - F. Michel


12 / 42
N
Ajout d’une activité

Étape 4 : connecter l’activité à sa vue


4.1 : ajout de la méthode onCreate
[Link]

Cours Android - F. Michel


13 / 42
N
Ajout d’une activité

Étape 4 : connecter l’activité à sa vue


4.2 : spécification de la vue à utiliser
Méthode setContentView

Cours Android - F. Michel


14 / 42
N
Ajout d’une activité

Étape 4 : connecter l’activité à sa vue


4.2 : spécification de la vue à utiliser
Récupération de l’identifiant généré automatique-
ment via la classe [Link]

Cours Android - F. Michel


15 / 42
N
Lancement d’une activité

Rappel : activité Main (cours précédent)

Cours Android - F. Michel


17 / 42
N
Lancement d’une activité

Exemple : à partir d’un bouton placé dans


l’activité principale

Rappel : gestion clique solution 2

Cours Android - F. Michel


18 / 42
N
Lancement d’une activité

Lancement de l’activité

Méthode [Link](Intent)

Cours Android - F. Michel


19 / 42
N
Lancement d’une activité

Lancement de l’activité

Création d’un Intent explicite, utilisation du constructeur


[Link](Context, Class<?>)

Cours Android - F. Michel


20 / 42
N
Lancement d’une activité

Lancement de l’activité

Création d’un Intent, utilisation du constructeur


[Link](Context, Class<?>)

Cours Android - F. Michel


21 / 42
N
Lancement d’une activité

Résultat : DisplayMessageActivity est dé-


marée au clique sur le bouton send

Cours Android - F. Michel


22 / 42
N
L’objet [Link]

À propos de l’objet Intent

Principes d’un Intent


moyen de lier deux composants (2 activités par exemple)

représente pour une application le désir de faire quelque chose en


utilisant d’autres éléments du système (e.g. une autre activité)

[Link](Context, Class< ?>)


paramètre 1 : un objet de type [Link].
[Link] est sous classe de contexte
paramètre 2 : un objet de type [Link] : la classe
correspondant au composant visé, e.g. une activité

Cours Android - F. Michel


24 / 42
N
L’objet [Link]

À propos de l’objet Intent


L’activité principale est démarée grâce à un Intent

Cours Android - F. Michel


25 / 42
N
L’objet [Link]

Communication de données via un Intent


[Link](String, String)

Cours Android - F. Michel


26 / 42
N
L’objet [Link]

Affichage des données transférées dans


DisplayMessageActivity

Cours Android - F. Michel


27 / 42
N
L’objet [Link]

Transfert des données de la vue

Cours Android - F. Michel


28 / 42
N
L’objet [Link]

Transfert des données de la vue

Cours Android - F. Michel


29 / 42
N
L’objet [Link]

Création d’une vue dans le code Java :


nouvelle activité AfficheMessage

Cours Android - F. Michel


30 / 42
N
L’objet [Link]

Transfert des données à AfficheMessage


Modification de [Link]

Cours Android - F. Michel


31 / 42
N
L’objet [Link]

Problème ! ! !

Cours Android - F. Michel


32 / 42
N
L’objet [Link]

Problème → LogCat en mode debug

Cours Android - F. Michel


33 / 42
N
L’objet [Link]

Modification [Link]

Cours Android - F. Michel


34 / 42
N
L’objet [Link]

Transfert des données à AfficheMessage

Cours Android - F. Michel


35 / 42
N
Implicit Intent

Intent implicite

Objectif d’un Intent implicite


Permet de demander au système de réaliser une action particulière
sans viser une Activité spécifique

Lors de l’utilisation, Android cherche parmi les activités qui se sont


enregistrées comme capable de gérer cette demande (manifest)

Si plusieurs activitées sont trouvées, il est automatiquement


demandé à l’utilisateur de choisir (“ouvrir avec”)
Exemples :
affichage d’une page web
composition d’un mail

Cours Android - F. Michel


37 / 42
N
Implicit Intent

Exemple : ActionView (générique)

Cours Android - F. Michel


38 / 42
N
Implicit Intent

Précaution d’emploi

Vérification de la disponibilité d’un composant adéquat


Il est préférable de vérifier que le système est capable de gérer
l’action demandée

si aucun composant ne peut gérer une demande, l’application


initiatrice plante !

Cours Android - F. Michel


39 / 42
N
Implicit Intent

Enregistrer une activité comme capable de


gérer un Intent
Nouvelle activité : AfficheURL

Cours Android - F. Michel


40 / 42
N
Implicit Intent

Définition d’un intent-filter dans le mani-


fest

intent-filter
action : type d’action gérée par l’activité (e.g. [Link],
[Link])

data : le type de donnée que l’activité peut gérer (e.g.


android :mimeType, android :scheme)

category : permet de spécifier plus avant le type de l’activité (par


défaut : DEFAULT)
Cours Android - F. Michel
41 / 42
N
Implicit Intent

Résumé global

Activity
définition : manifest Android
création / implémentation : extends [Link]
lancement : [Link](Intent)

Intent
explicite : lancement d’une activité spécifique
implicite : demande de lancement d’un service
communication entre activités : [Link](K,V)

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

Cours Android - F. Michel


42 / 42
N

Vous aimerez peut-être aussi