El concepto de una intención en Android?

Realmente no entiendo el uso y el concepto de una Intención. ENTIENDO que una actividad es una interfaz visual y un esfuerzo que el usuario puede participar. PENSO que una intención se utiliza para lanzar y para comunicar entre diversas actividades. Si es así, ¿cómo lograrías eso? Un ejemplo de código sería útil. En forma de analogía, trate de comparar una intención con algo en la vida cotidiana. ¡Eso ayudaría muchísimo!

Un Intent se puede utilizar para iniciar actividades, mediante el suministro de una acción y algunos datos. Un ejemplo de uso de una acción de Intent para ver una página web:

 Intent myIntent = new Intent(Intent.VIEW_ACTION, Uri.parse("http://www.google.com")); 

Donde la acción es Intent.VIEW_ACTION y la cadena de datos es un Uri del sitio web de Google.

Tareas comunes y cómo hacerlas en Android

He intentado, pero es difícil comparar una Intent con algo en la vida cotidiana. Si hago algo, lo anotaré con mi respuesta.

Para citar los documentos de la API , una Intent es básicamente una estructura de datos pasiva que contiene una descripción abstracta de una acción a realizar , con dos piezas primarias de información, acción y datos.

En el nivel más básico, un Intent puede ser visto como una acción que se puede decir a Android para invocar – y lo que sucede depende de lo que está registrado para esa acción.

La parte de acción de un Intent es una cadena o constante de cadena, y la porción de datos es una cadena que representa un URI . Además de estos atributos principales, puede agregar nuevos atributos a través de un extra, que es sólo un mapa de pares clave-valor.

Para obtener más información, consulte Intents and Intent Filters , la clase Intent o Playing with Intents .

También recomiendo el libro Pro Android , que entra en estos detalles de la API por fin. Hay una versión más nueva llamada Pro Android 2 (no la he leído).

Si busca en Google Libros para ello , puede ver extractos del libro, consulte el Capítulo 3, "Uso de recursos, proveedores de contenido e intentos" para obtener más información.

Encuentro intenciones bastante familiares, especialmente con alguna experiencia en la integración de aplicaciones. Los intentos son básicamente mensajes, y el par de intenciones / actividad de Android es una arquitectura basada en mensajes que utiliza mensajes asíncronos con transmisión única y múltiple, entrega garantizada (creo), pero no garantiza el pedido.

La belleza de la interacción basada en mensajes es que desacoplas las actividades entre sí, tanto en términos de dependencias de código (sólo necesitan saber acerca de un tipo de intención compartida y su carga útil), y en términos de sus ciclos de vida (Android es lo que entiendo gratis Para detener y reanudar cualquiera de las partes en la transacción del mensaje). Esto facilita el mantenimiento y la modificación de las actividades, la reutilización de las existentes y el uso eficiente de los recursos.

Una intención es esencialmente una forma de una solicitud para declarar una necesidad . Estos trabajos en conjunto con IntentFilters, que básicamente son declaraciones de capacidades de lo que otra actividad o servicio puede hacer para quien lo necesite.

Los intentos se construyen típicamente de dos partes un tipo de información y un componente de datos que es típicamente un URI (Piense en un Web site, datos del GPS, o contacto a marcar).

Para usar una Intención debes crear tu intención con este tipo de información y datos y luego enviarla a otra Actividad, un Servicio o un Receptor Broadcast que entonces normalmente vincula la Intención y realiza algún tipo de acción que has solicitado.

La API de Android detalla los detalles de cómo crear sus propios IntentFilters y Receptores. Mira allí para más información.

Supongamos que en su amigo un confinado en dos habitaciones que tienen al lado y sin puertas y sin techos, usted quiere darle algo que él está en necesidad. Así que lo que haces es ponerlo en la pared común de sus habitaciones de tal manera que podría tomar esa cosa de otro lado. Es probable que vaciar algunos onfo en intención (en alguna actividad) que es global y tomar esa información de otro lado (en la próxima actividad).

Simple ejemplo del mundo real según mi entendimiento, La forma tradicional de enviar mensajes es decir, los servicios postales, usted tiene una carta con el remitente y la firma del receptor en la cubierta de la carta (cubierta y sellos se puede pensar en el contexto – si no estoy equivocado), y La letra real dentro se puede pensar como datos, en general la carta total (cubierta + datos de la carta real) llevado por el cartero es la intención y el cartero es OS:) Esperando esto da una idea.

Tenías razón diciendo que era para lanzar y comunicar entre aplicaciones.

http://developer.android.com/guide/topics/fundamentals.html

Eso tiene los fundamentos de Intents. Necesita utilizar .startActivityForResult () en lugar de startActivity () si desea un valor devuelto y tiene un método void onActivityResult (intento de intención) para actuar como un Listener cuando se devuelve el valor.

El constructor toma 2 partes. El primero es un int que será una constante en la clase Intent para decirle al sistema lo que quieres hacer con los datos. El segundo será un URI para pasar datos entre actividades. A continuación, el sistema los utiliza para decidir a qué aplicación se debe pasar cuando lo coloca en la solicitud de actividad. En cuanto a su analogía, no sé, eso es algo difícil, no hay nada realmente parecido. Supongo que lo más cercano que vas a conseguir es darle algo a su jefe y decirle que necesita a alguien más para hacer algo con él que no se puede.

Los fundamentos de la aplicación en la Guía de desarrollo definen las intenciones como "mensajes asíncronos".

Quizás para entender mejor su distinción de "mensajes", pueden ser comparados con los mensajes de WM_COMMAND en el mundo de Microsoft Windows, ya que por definición se supone que lanzan una acción (en lugar de pasar información solamente).

  • startActivity overridePendingTransition sólo muestra enter animation
  • Manejo de esquemas de URI desconocidos en Android (ejemplo de Bitcoin)
  • Inicio de la actividad mediante la acción personalizada
  • ¿Cuál es el propósito de las categorías de intención?
  • Apertura del cliente de correo electrónico a través de Intent (pero no para enviar un mensaje)
  • Mensaje adicional de intención de Android versus variable estática
  • Abrir archivo adjunto .txt de correo electrónico en la aplicación para Android
  • Función de devolución de llamada de Bluetooth onCharacteristicRead no está realizando llamada de intención a otra actividad Trabajar con <API21. Restaurantes en Marshmallow
  • Ver la ruta del archivo en un gestor de archivos según la intención de Android
  • Uso de FLAG_SHOW_WHEN_LOCKED con disableKeyguard () en la pantalla de bloqueo segura de Android
  • Android - la pantalla parpadea al iniciar la intención de abrir una actividad ya abierta
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.