kaiser75
19/04/14, 11:23:54
Queria empezar una aplicacion que usa las camaras del dispositivo, Que diferencia hay entre usar la camara del dispositivo o usar la API de Camara de Android ?
kriogeN
19/04/14, 12:23:08
Personalización vs sencillez.
Si optas por usar la aplicación de cámara lo único que tienes que hacer es crear un Intent con ACTION_IMAGE_CAPTURE y llamarlo con startActivityForResult, y luego en el onActivityResult leer la imagen, que realmente será la ruta donde se ha almacenado si quieres obtenerla con calidad 100%. Más sencillo que el mecanismo de un botijo, además no necesitas que tu aplicación tenga permiso para usar la cámara.
En cambio, si optas por usar el API, la cosa es bastante más complicada. Tienes que crear una Activity tu mismo, además tienes que usar un SurfaceView por narices para mostrar el Preview de la cámara, aunque no tenga Preview, da igual, puedes hacerlo de 1x1 si quieres. Tienes que gestionar el Preview cuando haces un onPause y luego un onResume, por ejemplo. Sin olvidar que también debes controlar la inclinación de la cámara para la inclinación de la foto en el Preview y en el resultado final. En fin, es bastante más complejo.
Como ya te digo, todo depende de la personalización que quieras, para que te hagas una idea te pongo mi caso:
Yo tengo una app que hace fotos, le aplica filtros y los sube a un álbum compartido en Internet, para este caso uso el Intent, llamo a la aplicación de cámara, obtengo la foto, y luego con la foto obtenida paso a una pantalla para aplicar filtros a la foto.
Esa misma app (ahora mismo esta parte en desarrollo, no está disponible en la versión de producción) también puede grabar vídeos y subirlos también a Internet, después de aplicarle filtros también. Para este caso uso el API de Cámara, por que los vídeos se graban manteniendo pulsado un botón, al soltarlo deja de grabar, y si vuelves a pulsarlo continua grabando y se une al vídeo anterior, de tal forma que el vídeo que al final subes es una unión de varios vídeos, pero todo transparente al usuario, eso no puedo hacerlo con el Intent de cámara.
Espero haberte ayudado, un saludo.
kaiser75
19/04/14, 21:25:57
Gracias por tu explicacion kriogeN, lo tengo mas claro ahora, bueno sobre la aplicacion decir que mi intencion es poder tomar dos fotos, despues unirlas y poderlas subir a internet, guardar en sd, etc, supongo que con el API se podran hacer mas cosas, personalizar mas la camara y todo eso, a probar toca haver que sale ;-).
vBulletin® v3.8.1, Copyright ©2000-2025, Jelsoft Enterprises Ltd.