- 1

Creación de Cámara Selfie con Kits de Huawei
01:10 - 2
Depuración de Aplicaciones en la Nube con Huawei Cloud Debugging
02:26 - 3

Desarrollo de Aplicaciones con Huawei Mobile Services Core
02:50 - 4

Creación de Proyecto Android Studio con Huawei Kits
02:18 - 5

Creación de Aplicaciones en AppGallery Connect de Huawei
03:28 - 6
Generación de Huella Digital SHA-256 para Android Studio
01:35 - 7

Configuración de APIs Huawei para Proyecto de Selfies en Android Studio
03:14 - 8

Configuración de Gradle para Huawei en Android Studio
09:25 - 9

Sincronización de aplicaciones con dependencias Huawei en Gradle
03:12
Implementación de Layout para Actividad de Cámara en Android
Clase 20 de 31 • Curso de Desarrollo de Aplicaciones con Huawei
Contenido del curso
- 14

Diseño de Pantalla en Selficam con Huawei ML Kit
10:05 - 15

Permisos de Cámara en Aplicaciones Android
17:18 - 16

Configuración y Personalización de Cámaras en Android
10:20 - 17

Personalización de Interfaz Gráfica para Cámara en Android
08:05 - 18

Reconocimiento Facial con Machine Learning en Android
10:58 - 19

Creación del Motor de Lente para Selfie Cam en Android
13:16 - 20

Implementación de Layout para Actividad de Cámara en Android
11:54 - 21

Integración de Cámara y Botones en Aplicación de Selfies
12:18 - 22

Implementación de Verificación Facial en App Android
10:01 - 23

Detección de Sonrisa y Rostro en Cámaras Huawei
11:37 - 24

Detección de Rostros y Cambio de Cámara en Android Studio
10:47 - 25

Implementación de Funcionalidad de Toma y Retoma de Fotos en Android
11:27 - 26

Guardar fotos en la galería con Android y Huawei Machine Learning
07:56
¿Cómo personalizar la cámara en una aplicación Android?
Personalizar la interfaz de usuario (UI) de la cámara en una aplicación Android es una habilidad esencial para los desarrolladores que buscan ofrecer experiencias únicas e innovadoras a sus usuarios. En esta clase, nos enfocaremos en crear la actividad de la cámara, añadiendo todos los componentes gráficos que hemos desarrollado en lecciones anteriores para que puedas crear tu propia experiencia de usuario personalizada.
¿Cómo inicializar la actividad de la cámara?
Para comenzar a personalizar la cámara, primero debemos inicializar las variables básicas y asegurarnos de que nuestro entorno está adecuadamente configurado. Aquí te dejo una estructura básica del código necesario:
var previewWidth = 320
var previewHeight = 240
// Verificar que el Lens Engine esté creado
if (lensEngine != null) {
val size = lensEngine.getDisplayDimensions()
if (size != null) {
previewHeight = size.height
previewWidth = size.width
}
}
Este fragmento de código proporciona un punto de partida configurando las dimensiones de previsualización y validando que el motor de lente (Lens Engine) está correctamente inicializado.
¿Cómo verificar la configuración del contexto y ajustar el layout?
Para que el layout de la cámara sea el más apto posible en términos de tamaño y orientación, verifica que el contexto está en modo retrato y ajusta tu configuración:
val resources = context.resources
val configuration = resources.configuration
if (configuration.orientation == Configuration.ORIENTATION_PORTRAIT) {
val temp = previewWidth
previewWidth = previewHeight
previewHeight = temp
}
Este proceso asegura que el layout de la cámara sea dinámico y se adapte automáticamente al modo de orientación del dispositivo, lo cual es crucial para ofrecer una visualización óptima.
¿Cómo calcular y ajustar el ratio de la vista?
El cálculo del ratio entre el ancho y la altura es vital para garantizar que la vista de la cámara y el marco no se salgan de los límites. Aquí un ejemplo básico:
val widthRatio = width.toFloat() / previewWidth
val heightRatio = height.toFloat() / previewHeight
if (widthRatio > heightRatio) {
childWidth = viewWidth
childHeight = (previewHeight.toFloat() * widthRatio).toInt()
} else {
childHeight = viewHeight
childWidth = (previewWidth.toFloat() * heightRatio).toInt()
}
Al mantener estos ratios, se garantiza que la vista de la cámara no exceda el área de visualización disponible, brindando una experiencia de usuario fluida y agradable.
¿Cómo implementar un overlay gráfico y motor de lente?
Una vez configuradas las dimensiones y ratios, es fundamental implementar un overlay gráfico y un motor de lente para finalizar la personalización de la cámara:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<LensEnginePreview
android:id="@+id/preview"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<GraphicOverlay
android:id="@+id/faceOverlay"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:layout_alignParentBottom="true"/>
</RelativeLayout>
Este xml muestra cómo integrar un LensEnginePreview y un GraphicOverlay, elementos esenciales para mostrar y superponer gráficos sobre la vista de la cámara.
A lo largo de este proceso, hemos creado una base sólida para personalizar la interfaz de cámara de una aplicación Android. Este conocimiento no solo enriquece tus habilidades de desarrollo, sino que también mejora el valor de las aplicaciones que desarrollas. Sigue aprendiendo y explorando nuevas posibilidades para llevar tus capacidades al siguiente nivel. ¡Adelante!