Desde digitalDot, ya sabéis que nos gusta ofreceros soluciones a todos aquellos que estáis metidos en el mundo del diseño y desarrollo de aplicaciones móviles.
En este artículo veremos cómo crear un código que nos permita capturar una imagen para nuestra aplicación de Android, ya sea haciendo una foto por la misma aplicación o eligiendo una ya existente de nuestra galería.
En primer lugar, tendremos que crear en nuestro archivo xml de la actividad un ImageView para adjuntar una imagen de la galería, y otro para realizar una foto.
XML:
Ahora crearemos la lógica en el archivo Java:
Creamos la función para elegir el archivo ya creado, que hemos llamado showFileChooser. Esta nos abrirá la galería.
Ahora creamos el onRequestPermissionsResult , para asegurarnos de que el usuario acepta dar permiso de capturar imagen y acceder a la galería.
Una vez hayamos creado el Request, creamos el onActivityResult:
También añadiremos al manifest el provider:
Y crearemos un XML(‘provider_paths’) con la ruta que queramos:
Ya solo quedaría crear un evento para acceder a cada una de las funciones y añadir los permisos correspondientes en el manifest.
Crearemos un Intent para acceder a la cámara y otro para la galería:
Los permisos que tendremos que añadir son:
<uses-permission android:name="android.permission.CAMERA" />
Tu aplicación debe solicitar permiso para usar una cámara del dispositivo.
Permite tanto escribir como leer datos externos.
En la etiqueta < application> añadiremos:
android:requestLegacyExternalStorage="true"
Las apps que se ejecutan en Android 10 o superior pueden pedir este permiso, que por defecto está puesto en ‘false’. Esto autoriza a que las aplicaciones inhabiliten temporalmente los cambios asociados con el almacenamiento específico.
Y, hasta aquí, nuestro artículo de hoy. Si queréis saber más sobre desarrollo de aplicaciones móviles, no os perdáis las noticias de nuestro blog 😉