2011-07-11 3 views
1

tousswithing la caméra lumière flash dynamique dans Android

que je fais une application de balayage de codes à barres dans android.In que je dois allumer la lumière flash de la caméra dynamique et je fais cela en utilisant le code suivant

mCamera = Camera.open();  
Camera.Parameters params = mCamera.getParameters(); 
params.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH); 
mCamera.setParameters(params); 
mCamera.startPreview(); 

Mais sa montrant une exception comme

ERROR/AndroidRuntime(17291): java.lang.RuntimeException: Fail to connect to camera service 

à la ligne

mCamera = Camera.open(); 

Je pense que l'exception est due au fait que pendant que je scanne le code à barres, la caméra est déjà en mode ouvert et ici j'essaie d'ouvrir à nouveau l'appareil photo.

Y at-il un moyen d'allumer la lumière du flash sans ouvrir à nouveau l'appareil photo? et comment?

+0

Salut Surendra, j'ai aussi la même exigence que vous, avez-vous eu une solution à ce problème? Si c'est le cas, envoyez-moi la solution, c'est très utile si vous envoyez l'extrait de code de travail. mon id est [email protected] – sathish

Répondre

0

Vous pouvez réutiliser votre objet de caméra existant et simplement définir des paramètres à cet effet. Notez que tous les appareils ne prennent pas en charge la torche en mode flash. De plus, certains, comme le fascinateur/épique (qui utilise réellement le mode flash) ne peuvent pas changer l'état sans se déconnecter et se reconnecter à l'appareil photo.

0

Vous accédez aux paramètres de l'appareil photo et à la caméra. Vérifiez si vous avez un android.permission.CAMERA dans AndroidMainfest.xml uses-permissions.

0

Avez-vous utilisé la vue de surface pour allumer la lumière du flash, quel appareil utilisez-vous étant donné que certains appareils nécessitent une vue de surface pour que le flash fonctionne.

Voici a link!

Questions connexes