356 votes

Quelle est l’intention dans android ?

Quelle est l' intention dans android ? Peut quelqu'un élaborer par exemple ? Quels sont les types de celui-ci et pourquoi nous l’utilisons dans android ? Pourquoi est-il si important dans android ? Merci d’avance.

492voto

Chirag Raval Points 25721

L'Intention est exactement ce qu'il décrit. C'est une "intention" de faire une action.

L'Intention est en fait un message pour dire que vous avez fait ou vous voulez que quelque chose se produise. Selon l'intention, applications ou le système d'exploitation peut-être à l'écoute et réagit en conséquence.

Pensez-y comme un souffle e-mail à un groupe d'amis, à qui vous dites à votre ami de Jean à faire quelque chose. Les autres gens vont ignorer le mail, mais il va réagir.

Pour écouter une intention (comme sonnerie de téléphone ou un SMS est reçu), vous mettez en œuvre un récepteur de radiodiffusion.

Si vous voulez déclencher une intention de faire quelque chose, comme la pop up de la numérotation, vous déclencher une intention de dire vous.

Vous pouvez trouver un bon exemple de l'Intention Ici.

http://www.vogella.de/articles/AndroidIntent/article.html

166voto

mr.boyfox Points 3704

Qu'est-ce que d'une Intention ?

L'intention est fondamentalement un message qui est passé entre les composants (tels que les Activités, les Services, les Récepteurs de Radiodiffusion, et les Fournisseurs de Contenu). Donc, c'est presque l'équivalent de paramètres passés à des appels d'API. Les différences fondamentales entre les appels de l'API et les intentions' appeler les composants sont les suivants:

  • Appels API synchrone alors que l'intention basé sur les invocations sont asynchrone.
  • Les appels d'API sont la compilation de liaison, tandis que l'intention appels sont au moment de l'exécution de liaison.

Bien sûr, les Intentions peuvent fonctionner exactement comme les appels d'API en utilisant ce qu'on appelle explicite les intentions, qui sera expliqué plus tard. Mais le plus souvent, implicite intentions sont la voie à suivre et c'est ce qui est expliqué ici.

Un composant qui veut invoquer un autre a seulement exprimer son intention de faire un travail. Et tout autre élément composant qui existe et a affirmé qu'il peut faire un tel travail par le biais de intent-filter, est appelé par la plate-forme android pour accomplir la tâche. Cela signifie, à la fois les composants ne sont pas conscients de l'existence de l'autre et peuvent encore travailler ensemble pour donner le résultat souhaité pour l'utilisateur final.

Cette connexion invisible entre les composants est atteint grâce à la combinaison des intentions, de l'intention de filtres et de la plate-forme android.

Cela conduit à d'énormes possibilités comme:

  • Mélanger et assortir ou plutôt plug et le jeu de composants à l'exécution.
  • Remplacement de la intégré android applications personnalisées développées des applications.
  • Au niveau des composantes de la réutilisation à l'intérieur et à travers les applications.
  • Le Service d'orientation de niveau le plus détaillé, si je puis dire.
  • Ici est la description supplémentaire sur l'intention, presque formelle.

Une intention est une description abstraite d'une opération à effectuer. Il peut être utilisé avec startActivity pour lancer une Activité, broadcastIntent pour l'envoyer aux intéressés BroadcastReceiver composants, et startService(Intent) ou bindService(But, ServiceConnection, int) pour communiquer avec un Service d'arrière-plan.

Une Intention prévoit une installation pour la réalisation de la fin d'exécution de liaison entre le code dans des applications différentes. Son plus grand usage est dans le lancement d'activités, où il peut être considéré comme de la colle entre les activités. C'est fondamentalement une passive de données de la structure de la tenue d'une description abstraite d'une action à effectuer. Les premiers éléments de l'information dans une intention sont les suivants:

  • action L'action générale à être réalisés, tels que ACTION_VIEW, ACTION_EDIT, ACTION_MAIN, etc.
  • données Les données pour fonctionner sur une personne, comme enregistrer dans les contacts la base de données, exprimée en Uri.

Sur cette structure de données est que l'android est mis en œuvre pendant la lecture de la documentation suivante est très utile:

Modifier

50voto

vabhatia Points 861

Les intentions sont une façon de dire à Android ce que vous voulez faire. En d'autres termes, vous décrivez votre intention. Les intentions peuvent être utilisés pour indiquer au système Android, que l'événement a eu lieu. D'autres composants de Android pouvez vous inscrire à cet événement par le biais d'un filtre d'intention.

Suivantes sont de 2 types de modes de

1.Explicite Les Intentions De

utilisé pour faire appel à un composant spécifique. Lorsque vous connaissez le composant que vous souhaitez lancer et vous ne voulez pas donner à l'utilisateur libre de contrôle sur le composant à utiliser. Par exemple, vous avez une application qui dispose de 2 activités. Activité de l'Un et de l'activité B. Vous souhaitez lancer une activité B à partir de l'activité de A. Dans ce cas, vous définissez une intention explicite de ciblage activityB et ensuite l'utiliser pour appeler directement.

2.Implicite Intentions

utilisé lorsque vous avez une idée de ce que vous voulez faire, mais vous ne savez pas quel composant doit être lancé. Ou si vous voulez donner à l'utilisateur la possibilité de choisir entre une liste de composants à utiliser. Si ces Intentions sont à envoyer pour le système Android, il recherche tous les composants qui sont enregistrées pour l'action spécifique et le type de données. Si un seul élément est trouvé, Android commence le composant directement. Par exemple, vous disposez d'une application qui utilise la caméra pour prendre des photos. L'une des fonctionnalités de votre application est que vous donner à l'utilisateur la possibilité d'envoyer les photos qu'il a prises. Vous ne savez pas quel type d'application que l'utilisateur est capable d'envoyer des photos, et vous aussi vous voulez donner à l'utilisateur la possibilité de choisir quelle application externe à utiliser si il a plus d'un. Dans ce cas, vous ne devez pas utiliser une intention explicite. Au lieu de cela, vous devez utiliser une intention implicite qui a son action à ACTION_SEND et ses données supplémentaires à l'URI de la photo.

Une intention explicite est toujours livré à sa cible, peu importe ce qu'elle contient; le filtre n'est pas consultée. Mais une intention implicite est livré à un composant uniquement si elle peut passer à travers l'un des composants des filtres

Des Filtres D'Intention

Si les Intentions de est envoyer pour le système Android, il permettra de déterminer les applications appropriées pour cette Intentions. Si plusieurs composants ont été enregistrés pour ce type d'Intentions, Android offre à l'utilisateur le choix d'ouvrir l'un d'eux.

Cette détermination est basée sur IntentFilters. Un IntentFilters spécifie les types d'Intention que d'une activité, d'un service, orBroadcast Récepteur peut répondre. Un Filtre d'Intention déclare à la capacité d'un composant. Il précise quels anactivity ou service peut faire et quels sont les types d'émissions à un Récepteur peut gérer. Il permet à la composante correspondante de recevoir des Intentions du type déclaré. IntentFilters sont généralement définis par le AndroidManifest.xml fichier. Pour BroadcastReceiver il est également possible de les définir dans le codage. Un IntentFilters est définie par sa catégorie, d'action et de filtres de données. Il peut également contenir des métadonnées supplémentaires.

Si un composant n'a pas de définir un filtre d'Intention, il ne peut être appelé explicitement par les Intentions.

Suivantes sont 2 façons de définir un filtre

1.Le fichier de manifeste

Si vous définissez le filtre d'intention dans le manifeste, votre demande n'a pas à être en cours d'exécution à réagir à des objectifs définis dans le filtre. Android enregistre le filtre lorsque votre application est installée.

2.Récepteur De Radiodiffusion

Si vous voulez que votre récepteur de radiodiffusion de recevoir l'intention uniquement lorsque votre application est en cours d'exécution. Ensuite, vous devez définir votre filtre d'intention au moment de l'exécution (par programmation). Gardez à l'esprit que cela fonctionne pour récepteurs de radiodiffusion.

12voto

Paresh Mayani Points 48123

Après avoir écrit une seule activité, il y a un besoin d'une transition à une autre activité pour effectuer une autre tâche que ce soit avec ou sans les informations de la première activité.

La plate-forme Android permet de transition par le biais de l'Intention de l'Interface.

Les mots sont prises à partir d'ici: à l'Aide de l'Intention de la Démo et je vous suggère de passer par cet exemple parce qu'ils ont également fourni un fichier de code. de sorte que vous pouvez l'utiliser et de comprendre facilement la même.

Mise à jour:

Ici est la meilleure information que j'ai croisé sur l'Intention, dans android: http://blog.vimviv.com/android/intent-android/

11voto

Farooq Nadeem Points 81

Une application Android peut contenir zéro ou plusieurs activités. Lorsque votre application a plusieurs activités, vous devrez naviguer d’une activité à l’autre. Dans Android, vous naviguez entre les activités par le biais de ce qu’on appelle une intention.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X