Apertura de la linterna del Galaxy Nexus

Estoy desarrollando una aplicación que necesita abrir la linterna de mi dispositivo Galaxy Nexus. Me he referido al post aquí

Linterna LED en Galaxy Nexus controlable por qué API?

public class TestCamera extends Activity implements SurfaceHolder.Callback{ Camera mCamera; public static SurfaceView preview; public static SurfaceHolder mHolder; public void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); preview = (SurfaceView) findViewById(R.id.camSurface); mHolder = preview.getHolder(); mCamera = Camera.open(); try { mCamera.setPreviewDisplay(mHolder); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } Button onLEDbtn = (Button) findViewById(R.id.onLED_btn); onLEDbtn.setOnClickListener(new OnClickListener(){ public void onClick(View v) { // TODO Auto-generated method stub Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_SHORT).show(); Parameters params = mCamera.getParameters(); params.setFlashMode(Parameters.FLASH_MODE_TORCH); mCamera.setParameters(params); mCamera.startPreview(); } }); } } public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { // TODO Auto-generated method stub } public void surfaceCreated(SurfaceHolder holder) { // TODO Auto-generated method stub mHolder = holder; try { mCamera.setPreviewDisplay(mHolder); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void surfaceDestroyed(SurfaceHolder holder) { // TODO Auto-generated method stub mCamera.stopPreview(); mHolder = null; } } 

Manifiesto:

 <uses-permission android:name="android.permission.CAMERA" /> <uses-feature android:name="android.hardware.camera" /> 

Sin embargo, todavía no puedo encender la linterna. ¿Podría alguien señalar mis errores? Gracias

Debe establecer la devolución de llamada mHolder.addCallback (this);

Debe agregar esta etiqueta en el archivo de manifiesto.

 <uses-feature android:name="android.hardware.camera.flash"/> 

Trate de añadir:

 android:name="android.permission.FLASHLIGHT" android:name="android.hardware.camera.flash 

Y mira este post: ¿Cómo activar la luz de la cámara flash de forma programática en Android?

  • Obtener imagen de captura y mostrar la imagen en otro diseño utilizando otra actividad en android
  • Cómo configurar la previsualización de la cámara como fondo a la vista de superficie en rajawali y captura de pantalla con 3D Obj & Vista previa de la cámara
  • Cámara Android, onPictureTaken (byte imgData, Cámara fotográfica) método & PictureCallback nunca llamado
  • Android onPreviewFrame no se llama
  • Deshabilitar el cambio de orientación
  • ¿Cómo usar la cámara de Android o la API de la cámara2 para admitir versiones antiguas y nuevas de la API sin notas de reprobación?
  • Tomar fotos "simplemente" no funciona
  • Ionic Cordova cámara problema con ios 10
  • ¿Cómo hago girar una vista previa de la cámara para tomar fotos de paisaje en modo vertical?
  • Java libgdx mover la cámara de perspectiva
  • Cómo comprobar si la cámara es abierta por cualquier aplicación
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.