Cámara frontal Android Camera2

Hola, recientemente me di cuenta de que la cámara API está en desuso y encontré la nueva API llamada Camera2.

He leído la documentación pero realmente no entiendo eso.

Así que mi pregunta es ¿cómo puedo previsualizar la cámara frontal con la nueva cámara api?

Sólo una vista previa, no la grabación.

Quiero usar esta nueva API porque en el futuro estoy adivinando que la actual Cámara API será reemplazada y dejará de funcionar.

Así que quiero estar preparado y sólo sentarse y ver mientras todo el mundo entra en pánico. Xd

En primer lugar averiguar el id de su cámara frontal (si tiene, por supuesto)

CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE); try { return manager.getCameraIdList(); } catch (CameraAccessException e) { return null; } 

Que encontrar caraCamera como este:

 CameraCharacteristics cameraCharacteristics = getCameraCharacteristics(cameraId); if (cameraCharacteristics == null) throw new NullPointerException("No camera with id " + cameraId); return cameraCharacteristics.get(CameraCharacteristics.LENS_FACING) == CameraCharacteristics.LENS_FACING_FRONT; 

Después de todo, usted tiene que fijar la cámara con ese id:

 CameraManager manager = (CameraManager) activity.getSystemService(Context.CAMERA_SERVICE); try { characteristics = manager.getCameraCharacteristics(mCameraId); } catch (CameraAccessException e) { e.printStackTrace(); } 

Tenga en cuenta, estos son sólo unos consejos para hacer lo que quieres hacer. Para obtener detalles sobre cómo iniciar una vista previa, y no sólo, consulte: http://developer.android.com/samples/Camera2Basic/index.html

0 para la parte posterior 1 para el frente

Para la cámara trasera , tenemos que hacerlo dentro del método openCamera :

CameraId = manager.getCameraIdList () [0];

Para la cámara frente a frente , tenemos que añadir esta línea debajo del método openCamera :

CameraId = manager.getCameraIdList () [1];

He añadido todos los códigos y capturas de pantalla aquí

Introduzca aquí la descripción de la imagen

  • Dónde obtener recursos sdk drawable para Lollipop
  • ¿Cómo usar la función de bloqueo de tareas de vista previa de Android-L?
  • El cajón de navegación semi-transparente sobre la barra de estado no funciona
  • Lista de verificación de material de diseño: ocultar la barra de aplicaciones en el desplazamiento?
  • Disposición detrás de la barra de estado - Android Lollipop
  • Cómo configurar el relleno para el widget CardView en Android L
  • Compatibilidad con el diseño del material
  • popup personalizado no funciona correctamente para la parte superior más cruda del teclado en lollipop 5.1 dispositivo Moto G
  • Recyclerview dolorosamente lento para cargar imágenes en caché de Picasso
  • ¿Qué es ScrimInsetsFrameLayout?
  • ¿Cuáles son las variables 'shadow $ _klass_' y 'shadow $ _monitor_' para java.lang.Object?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.