Propriété de Albiri Sigue
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
250 L’art du développement Android
Cette approche peut utiliser deux scénarios :
● Vous connaissez l’activité à lancer, probablement parce qu’elle fait partie de votre
application.
● Vous disposez d’une Uri vers… quelque chose et vous voulez que vos utilisateurs
puissent en faire… quelque chose, bien que vous ne sachiez pas encore comment.
Ce chapitre présente le premier scénario ; le suivant détaillera le second.
Activités paires et sous-activités
Lorsque vous décidez de lancer une activité, une question essentielle à laquelle vous devez
répondre est : "Est-ce que mon activité a besoin de savoir quand se termine l’activité
qu’elle a lancée ?"
Supposons par exemple que vous vouliez créer une activité pour collecter des informations
d’authentification pour un service web auquel vous vous connectez – vous devrez peutêtre vous authentifier avec OpenID 1 pour utiliser un service OAuth 2 . En ce cas, votre activité principale devra savoir quand se termine l’authentification pour pouvoir commencer à
utiliser le service web.
Imaginons maintenant une application de courrier électronique Android. Lorsque l’utilisateur décide de visualiser un fichier attaché, ni vous ni l’utilisateur ne s’attend à ce que
l’activité principale sache quand cette visualisation se terminera.
Dans le premier scénario, l’activité lancée est clairement subordonnée à l’activité qui l’a
lancée. La première sera donc sûrement lancée comme une sous-activité, ce qui signifie
que la seconde sera prévenue de la fin de son activité fille.
Dans le second scénario, l’activité lancée est plutôt un "pair" de l’activité qui l’a lancée. Elle
sera donc plutôt lancée comme une activité classique. Votre activité ne sera pas informée de la
fin de sa "fille" mais, encore une fois, elle n’a pas vraiment besoin de le savoir.
Démarrage
Pour démarrer une activité, il faut une intention et choisir comment la lancer.
Création d’une intention
Comme on l’a expliqué au Chapitre 1, les intentions encapsulent une requête pour une
activité ou une demande adressée à un autre récepteur d’intention, afin qu’il réalise une
certaine tâche.
1. http://openid.net/.
2. http://oauth.net/.
Livre Android.book Page 250 Dimanche, 8. novembre 2009 12:23 12
customer 27921 at Fri Mar 11 19:19:45 +0100 2011
250 L’art du développement Android
Cette approche peut utiliser deux scénarios :
● Vous connaissez l’activité à lancer, probablement parce qu’elle fait partie de votre
application.
● Vous disposez d’une Uri vers… quelque chose et vous voulez que vos utilisateurs
puissent en faire… quelque chose, bien que vous ne sachiez pas encore comment.
Ce chapitre présente le premier scénario ; le suivant détaillera le second.
Activités paires et sous-activités
Lorsque vous décidez de lancer une activité, une question essentielle à laquelle vous devez
répondre est : "Est-ce que mon activité a besoin de savoir quand se termine l’activité
qu’elle a lancée ?"
Supposons par exemple que vous vouliez créer une activité pour collecter des informations
d’authentification pour un service web auquel vous vous connectez – vous devrez peutêtre vous authentifier avec OpenID 1 pour utiliser un service OAuth 2 . En ce cas, votre activité principale devra savoir quand se termine l’authentification pour pouvoir commencer à
utiliser le service web.
Imaginons maintenant une application de courrier électronique Android. Lorsque l’utilisateur décide de visualiser un fichier attaché, ni vous ni l’utilisateur ne s’attend à ce que
l’activité principale sache quand cette visualisation se terminera.
Dans le premier scénario, l’activité lancée est clairement subordonnée à l’activité qui l’a
lancée. La première sera donc sûrement lancée comme une sous-activité, ce qui signifie
que la seconde sera prévenue de la fin de son activité fille.
Dans le second scénario, l’activité lancée est plutôt un "pair" de l’activité qui l’a lancée. Elle
sera donc plutôt lancée comme une activité classique. Votre activité ne sera pas informée de la
fin de sa "fille" mais, encore une fois, elle n’a pas vraiment besoin de le savoir.
Démarrage
Pour démarrer une activité, il faut une intention et choisir comment la lancer.
Création d’une intention
Comme on l’a expliqué au Chapitre 1, les intentions encapsulent une requête pour une
activité ou une demande adressée à un autre récepteur d’intention, afin qu’il réalise une
certaine tâche.
1. http://openid.net/.
2. http://oauth.net/.
Livre Android.book Page 250 Dimanche, 8. novembre 2009 12:23 12
