Le 14 septembre 2017, nous avons publié une version actualisée de notre Politique de confidentialité. En utilisant video2brain.com vous vous engagez à respecter ces documents mis à jour. Veuillez donc prendre quelques minutes pour les consulter.

Découvrir le développement d'applications avec Android 5

Démarrer des activités

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
Vous allez voir comment afficher une nouvelle activité en utilisant un intent implicite ou explicite.
06:36

Transcription

Maintenant que notre nouvelle activité est créée nous allons faire en sorte que lorsque l'utilisateur clique sur le bouton de la page d'accueil, il se rende sur cette nouvelle activité. Première chose à faire, on va renommer ce bouton, qui pour l'instant s'appelle modifier accueil. On va l'appeler groupes de contacts c'est un petit détail, OK, maintenant que je suis ici, donc, rappelez-vous, quand on appuyait sur le bouton, ça venait ici, et ça changeait de texte en hello, avec plein de O donc ça, ça m'inéresse plus. Ce que j'aimerais faire, ce serait lancer l'activité qu'on a créé. Comme je vous l'expliquais tout à l'heure, on doit créer un intent, mettre toutes les informations qu'on souhaite à l'intérieur, et lancer cet intent. En tout cas, c'est relativement simple, on va faire un intent explicite, puisqu'on sait exactement quelle est l'activité qu'on veut lancer. On veut pas demander au système de trouver la plus appropriée pour notre besoin. On sait laquelle on a besoin. Donc open groups est égal à new intent Donc pour une activité explicite, on va d'abord lui faire passer le contexte, donc ce sera this, rappelez-vous le contexte, on l'a vu dans la notion de composant au cours précédent. Et je vais lui donner la classe de l'activité à ouvrir, donc ce serait group listActivity point, class Voilà, donc là j'ai créé un intent, avec les infos nécessaires pour l'ouvrir. J'ai pas de données particulières à lui faire passer. Mais si j'avais voulu, j'aurai pu dire open groups put extra Et là, vous voyez, on peut mettre des clés valeurs, donc chaque fois, name ce sera le nom de l'extraqu'on veut ajouter à l'intérieur, et on soit un booléen, soit un bundle, des données binaires brutes, caractères, chaines de caractères, double etc. Vous avez tous les types de base, et attention, rappelez-vous ce que je vous ai dit précédemment, vous ne pouvez mettre que les données sérialisables là-dedans, donc on évite de mettre des gros objets, parce que sinon, elle va d'abord le sérialiser pour l'enregistrer dans l'intent, et ensuite le désérialiser, à l'arrivée. Donc là, j'ai pas d'extra à mettre. Donc je vais juste faire start Activity open groups Si je lance mon application, donc là, groupes de contacts, quand je clique ici. Il m'a bien affiché ma nouvelle activité. Voilà pour les intents explicites. Il existe un troisième type, alors c'est toujours le même intent, ce sera explicite ou implicite, c'est la même idée, par contre, ce qu'on a pas vu, ce serait comment utiliser un intent pour un résultat. C'est à dire que dans certains cas, au lieu de passer la main à notre activité puis qu'elle fasse tout ce qu'elle a à faire, que vous ne soyez pas sûr qu'elle revienne, vous pouvez en fait lancer une activité qui va faire quelque chose pour vous, et vous retourner un résultat. Imaginez par exemple que vous ayez besoin de parcourir les contacts du téléphone, en fait demander à la personne de choisir un contact, pour après récupérer son email ou autre. On va faire ça ici. void pick contacts J'essaie de prendre au maximum les exemples que l'on trouve sur le site officiel d'Android, comme ça, si vous voulez aller un petit peu plus loin dans vos recherches, vous serez familiarisé avec ce qu'on peut trouver. Je crée un nouvel intent, donc on va l'appeler, pick contact intent est égal à new intent, cette fois-ci ce sera un intent implicite, je ne sais pas quelles applications vont me permettre de choisir le contact, action pick Vous vous rappelez, pour un intent implicite, c'est une action et une URL. Et donc là, il y en a une toute prête pour ça, c'est contact point, content URI En faisant ça, mon intent est prêt, et là, cette fois-ci, au lieu de faire juste start activity, je vais faire start activity for result. Ça veut dire qu'il souhaite que je lance une activité, donc ça va être celle du pick contact intent, et ensuite, on peut mettre un request code donc ça va être un chiffre, pour l'instant je mets juste 1. On va faire plus proprement que ça après, mais juste pour vous montrer le principe, Alors ce que je vais faire, pour l'instant je vais commenter ces deux lignes-là. Et je vais juste appeler l'autre à la place, juste pour vous montrer. Je lance. Quand j'appuie ici, bon il y a aucun dans l'émulateur, mais il a bien lancé un intent, qui n'est pas celui de mon application, qui permet de choisir un contact, et puis je peux revenir en arrière, pour revenir dans mon application. Si je veux obtenir le résultat, s'il y avait vraiment eu un contact, que la personne en cliquant m'avait retourné quelque chose, il y a une méthode particulière pour ça, qui s'apelle onActivityResult, voilà c'est celle-ci. Et qui vous retourne le request code, en gros, il va vous refaire passer le 1 que vous lui avez donné, et le result code, c'est à dire, est-ce qu'il a réussi ou pas, et éventuellement les données qui sont fournies à l'intérieur, dans ce résultat. On ne va pas faire tout le tri du contact, mais je montre juste le principe, donc on va dire, si le request code est égal à 1, puisque c'est celui qu'on avait, si j'étais en train de chercher le contact et que le résultat de la recherche est égal à Activity, il y a une constante pour ça, point result or canceled first user OK Voilà, si la personne a bien choisi quelque chose, et qu'on est revenu, alors, bien là, on va parcourir les data, alors là, ça dépend de chaque type de requête, pour un contact, c'est un petit peu complexe. Il faut utiliser un cursus, il y a pas mal de choses à faire pour récupérer un contact, mais en gros, dans ce data, vous avez une méthode get data qui vous retourne les données brutes qu'il a pu récupérer, et puis, en fonction du type de demande que vous lui avez faite, vous aurez là-dedans tout votre résultat que vous pourrez récupérer. Alors juste pour vous montrer, pour faire les choses un peu plus proprement, on n'est pas censé mettre un 1 et un 1 ici, comme ça. On va plutôt faire une constante, enabled int pick contact request C'est pas le chiffre le problème, c'est surtout le fait qu'on ait mis une constante qui voulait pas dire grand-chose. Et donc là, je vais remplacer mon 1 ici, par ma constante, voilà c'est un petit peu plus lisible. L'avantage en fait d'avoir ce principe-là, c'est que vous pouvez avoir plusieurs demandes, imaginez que je fasse une autre demande pour choisir une date, en fait, tous les retours vont arriver dans cette fonction, il faut qu'on puisse faire la différence, à savoir est-ce que c'est un retour suite à une demande de contact. ou suite à une demande d'agenda, ou autre. Donc c'est pour ça en fait qu'il vous propose de passer un entier, pour caractériser cette demande, pour après, quand vous avez un résultat, comme tous les résultats arrivent au même endroit, que vous puissiez à quoi ça correspondait. Voilà pour le lancement des activités.

Découvrir le développement d'applications avec Android 5

Développez des applications mobiles pour Android. Créez un projet de A à Z sous Android Studio, de l’installation du kit de développement, jusqu’à sa publication sur le Play Store.

3h17 (39 vidéos)
Aucun commentaire n´est disponible actuellement
 
Logiciel :
Android Android 5
Spécial abonnés
Date de parution :17 mars 2016

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !