Integración de Cámara y Botones en Aplicación de Selfies

Clase 21 de 31Curso de Desarrollo de Aplicaciones con Huawei

Resumen

¿Cómo integrar los elementos visuales en una app de selfies?

La integración de elementos visuales en una aplicación de selfies puede parecer complicada, pero con los pasos adecuados y una planificación meticulosa, puedes lograr una interfaz dinámica y funcional. En esta guía, aprenderás a gestionar componentes visuales y a enlazarlos con tu código de manera que enriquezcan la experiencia del usuario.

¿Cómo se añaden elementos dragables?

Para comenzar, necesitas agregar elementos o assets a tu proyecto. Vamos a utilizar dragables, que son gráficos que puedes arrastrar y soltar dentro de la interfaz de usuario.

  1. Agrega los assets: Dirígete a tu gestionador de archivos y copia los dragables preparados en la carpeta de tu proyecto.
  2. Incorpora los dragables a los botones: En el diseño de tu aplicación, utiliza estos elementos gráficos para personalizar los botones que controlarás en la interfaz.

¿Cómo se crean botones personalizados?

Los botones personalizados permiten una interacción más rica dentro de la aplicación. Vamos a crear dos botones importantes para la navegación de la cámara: uno para cambiar la orientación de la cámara y otro para reiniciar la sesión de foto.

<!-- Botón para cambiar la cámara -->
<Button
    android:id="@+id/phasingSwitch"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textOff="Front Camera"
    android:textOn="Rear Camera"
    android:background="@drawable/phasing_switch_drawable"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="30dp" />

<!-- Botón para reiniciar la sesión -->
<Button
    android:id="@+id/restart"
    android:layout_width="35dp"
    android:layout_height="35dp"
    android:background="@drawable/restart_drawable"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    android:layout_marginEnd="20dp"
    android:gravity="start"
    android:visibility="visible" />

¿Cómo se inicializan variables para la cámara?

A continuación, es crucial establecer las variables que manipularán la funcionalidad de la cámara:

  1. Declara las variables: Crea las variables necesarias en tu actividad principal. Organiza estas variables para controlar aspectos como el analizador de rostros, el tipo de lente, y los botones de la interfaz.
// Variables para la funcionalidad del lente y UI
LensEngine lensEngine = null;
LensEnginePreview preview = null;
GraphicOverlay overlay = null;
Button restartButton = null;
  1. Configura el estado: Verifica si el estado puede cambiar entre modos de retrato y paisaje, asegurando que la interfaz responda correctamente a la orientación del dispositivo.

¿Cómo se construye el motor de cámara?

La creación de un motor para la lente es esencial para interpretar las imágenes capturadas y brindar una experiencia interactiva al usuario.

  1. Configura el Análisis de Rostros: Implementa el Face Analyzer que identificará las características faciales y la proporción de la cara.
  2. Crea el Motor de Lente: Asocia los settings del analizador al motor que procesará la imagen en tiempo real.
// Creación del motor de lente
LensEngine createLensEngine() {
    FaceAnalyzerSettings settings = new FaceAnalyzerSettings.Builder()
            .setFeatureType(FaceAnalyzerSettings.TYPE_FEATURES)
            .build();

    analyzer = new FaceAnalyzer(settings);
    LensEngine lensEngine = new LensEngine.Builder(this, analyzer)
            .setLensType(LensEngine.BACK_LENS)
            .applyDisplayDimension(640, 480)
            .applyFps(25.0f)
            .enableAutomaticFocus(true)
            .build();

    return lensEngine;
}

¿Cómo probar la aplicación?

Finalmente, prueba tu aplicación para asegurarte de que todos los elementos funcionan como se espera:

  1. Logueo y configuración: Asegúrate de tener acceso a autenticaciones necesarias y sigue los pasos de instalación dentro del dispositivo.
  2. Prueba de funcionalidad: Usa herramientas como Visour para replicar el funcionamiento del dispositivo en tu PC y asegurarte de que las interacciones son correctas.

La integración de elementos gráficos y funcionales en una aplicación de selfies puede transformar la experiencia del usuario y proporcionar un valor añadido significativo. A través de configuraciones precisas de interfaz y lógica, podrás ofrecer una aplicación versátil y atractiva. ¡Sigue explorando y mejorando tus habilidades de desarrollo!