Desarrollo de Android: cuatro puntos clave de las aplicaciones de Android
Para una aplicación de Android, está organizada por cuatro bloques de construcción clave. Estos cuatro bloques de construcción son: actividad, receptor de intención, servicio y proveedor de contenido.
Sin embargo, no todas las aplicaciones de Android. Requiere estos cuatro bloques de construcción. Esto no es necesario. A veces, solo necesitamos algunos de estos cuatro para formar nuestra aplicación.
Cuando sabemos qué bloques de construcción necesita nuestra aplicación, debemos registrar la lista de estos bloques de construcción en AndroidManifest.xml. Este es un archivo de configuración XML. Este archivo de configuración se utiliza para definir los componentes de nuestra aplicación, sus funciones y condiciones necesarias. Este archivo de configuración es necesario para todas las aplicaciones de Android. Para el esquema de AndroidMainfest.xml, daremos algunas explicaciones sobre los cuatro bloques de construcción:
1. Actividad
La actividad es el más básico de los bloques de construcción de Android. aplicación, una actividad suele ser una sola pantalla. Cada actividad se implementa como una clase independiente y hereda de la clase base Actividad. Esta clase de actividad mostrará una interfaz de usuario compuesta por varios controles de Vistas y responderá a eventos. La mayoría de las aplicaciones contienen varias pantallas. Por ejemplo, una aplicación de mensajería de texto tendría una pantalla para mostrar la lista de contactos, una segunda pantalla para escribir mensajes de texto y pantallas para explorar mensajes de texto antiguos y realizar configuraciones del sistema. Cada una de estas pantallas es una actividad. Navegar de una pantalla a otra es sencillo. En algunas aplicaciones, una pantalla incluso devolverá valores a la pantalla anterior.
Cuando se abre una nueva pantalla, la pantalla anterior se pausará y se guardará en la pila del historial. El usuario puede volver a la pantalla anterior en la pila del historial. Las pantallas también se pueden eliminar de la pila del historial cuando ya no se utilizan. De forma predeterminada, Android conservará la pantalla de ejecución de cada aplicación desde la pantalla de inicio.
Android utiliza la clase especial Intent para moverse entre pantallas. La clase Intent se utiliza para describir lo que hará una aplicación. En la estructura de descripción de Intent, hay dos partes más importantes: acción y datos correspondientes a la acción. Los tipos de acción típicos incluyen: PRINCIPAL (portal de actividades), VER, SELECCIONAR, EDITAR, etc. Los datos correspondientes a la acción se expresan en forma de URI. Por ejemplo: para ver la información de contacto de una persona, debe crear una intención con un tipo de acción VISTA y un URI que represente a la persona.
Una clase relacionada con él se llama IntentFilter. En lugar de que una intención sea una solicitud válida para hacer algo, se utiliza un filtro de intención para describir con qué intenciones puede operar una actividad (o un receptor de intenciones). Si una actividad quiere mostrar la información de contacto de una persona, debe declarar un IntentFilter. Este IntentFilter debe saber cómo manejar la acción VER y representar el URI de una persona. IntentFilter debe definirse en AndroidManifest.xml.
Navegar de una pantalla a otra es sencillo analizando varias intenciones. Al navegar hacia adelante, la actividad llamará al método startActivity(Intent myIntent). Luego, el sistema busca los IntentFilters definidos en todas las aplicaciones instaladas para encontrar la actividad correspondiente al Intent que mejor coincida con myIntent. Después de recibir la notificación de myIntent, la nueva actividad comienza a ejecutarse.
Cuando se llama al método startActivity, se activará la acción de analizar myIntent. Este mecanismo proporciona dos beneficios clave:
◆Las actividades pueden reutilizar una solicitud generada en forma de Intent de otros componentes;
◆Las actividades se pueden reemplazar por una nueva actividad con el mismo IntentFilter en cualquier momento.
2. Receptor de intención
Cuando desea que su aplicación responda a un evento externo (como cuando entra una llamada telefónica, cuando la red de datos está disponible o por la noche). ) Para generar una respuesta, puede utilizar un receptor de intenciones. Aunque el receptor de intenciones utiliza NotificationManager para notificar al usuario cuando ocurre un evento de interés, no genera una interfaz de usuario. Los receptores de intenciones se registran en AndroidManifest.xml, pero también se pueden registrar en código usando Context.registerReceiver(). Cuando se activa un receptor de intenciones, su aplicación no tiene que llamar al receptor de intenciones en la solicitud; el sistema iniciará su aplicación cuando sea necesario. Varias aplicaciones también pueden transmitir sus propios receptores de intenciones a otras aplicaciones mediante Context.broadcastIntent().
3. Servicio
Un Servicio es un programa con un ciclo de vida largo y sin interfaz de usuario. Un buen ejemplo es un reproductor multimedia que reproduce canciones de una lista de reproducción. En una aplicación de reproductor multimedia, debe haber múltiples actividades que permitan a los usuarios seleccionar canciones y reproducirlas. Sin embargo, no existe ninguna actividad correspondiente para la función de reproducción de música, porque los usuarios, por supuesto, pensarán que la música debería seguir reproduciéndose cuando naveguen a otras pantallas. En este ejemplo, la actividad del reproductor multimedia utiliza Context.startService() para iniciar un servicio de modo que se pueda seguir reproduciendo música en segundo plano. Al mismo tiempo, el sistema mantendrá este servicio ejecutándose hasta que finalice. Además, también podemos conectarnos a un servicio utilizando el método Context.bindService() (si el servicio aún no se está ejecutando, se iniciará). Después de conectarnos a un servicio, también podemos comunicarnos con él a través de la interfaz proporcionada por el servicio. Tomando el ejemplo de un reproductor multimedia, también podemos realizar operaciones como pausar y reproducir.
4. Proveedor de contenido
Las aplicaciones pueden guardar sus datos en archivos, bases de datos SQL o incluso en cualquier dispositivo válido. El proveedor de contenido es útil cuando desea compartir los datos de su aplicación con otras aplicaciones. Una clase de Proveedor de contenido implementa un conjunto de métodos estándar para permitir que otras aplicaciones guarden o lean varios tipos de datos procesados por este Proveedor de contenido.