So strange, can u post all code in this activity?

2012/2/8 Matt Clark <mrclark32...@gmail.com>

> Even using your code, in LogCat i get:
> open
> second open
> fail to open camera
> This happens even after rebooting the phone, however all other
> applications that use the camera still work.
>
> On Feb 7, 2:45 am, v bobbywink <vvnevercha...@gmail.com> wrote:
> > well, i think camera has crashed and in the condition u can't get
> > camera service. U must reboot phone.
> > when using hardware , u should be careful. u can open  Camera in
> > onStart() and release Camera in onStop(). Can't open camera many times
> > in activity, when task finish u must release it .
> > sample code
> > private void turnLightOn() {
> >         if (false == mIsFlashOpen) {
> >             if (null == mCamera) {
> >                 try {
> >                     Log.e(TAG, "open");
> >                     mCamera =Camera.open(CameraInfo.CAMERA_FACING_BACK);
> >                 } catch (RuntimeException e) {
> >                     try {
> >                         Thread.sleep(500);
> >                         Log.e(TAG, "second open");
> >                         mCamera
> =Camera.open(CameraInfo.CAMERA_FACING_BACK);
> >                     } catch (Exception sube) {
> >                         Log.e(TAG, "fail to open camera");
> >                         sube.printStackTrace();
> >                         mCamera = null;
> >                     }
> >                 }
> >             }
> >             if (null != mCamera) {
> >                 Parameters parameters = mCamera.getParameters();
> >                 if (parameters == null) {
> >                     return;
> >                 }
> >                 List<String> flashModes =
> > parameters.getSupportedFlashModes();
> >                 // Check if camera flash exists
> >                 if (flashModes == null) {
> >                     return;
> >                 }
> >                 String flashMode = parameters.getFlashMode();
> >                 if (!Parameters.FLASH_MODE_TORCH.equals(flashMode)) {
> >                     // Turn on the flash
> >                     if
> > (flashModes.contains(Parameters.FLASH_MODE_TORCH)) {
> >
> > parameters.setFlashMode(Parameters.FLASH_MODE_TORCH);
> >                         mCamera.startPreview();
> >                         mCamera.setParameters(parameters);
> >                         mRightBtn.setEnabled(true);
> >                     } else {
> >                         Log.e(TAG, "FLASH_MODE_TORCH not supported");
> >                     }
> >                 }
> >             }
> >         }
> >     }
> >
> >     private void turnLightOff() {
> >         if (mIsFlashOpen) {
> >             mIsFlashOpen = false;
> >             if (mCamera == null) {
> >                 return;
> >             }
> >             Parameters parameters = mCamera.getParameters();
> >             if (parameters == null) {
> >                 return;
> >             }
> >             List<String> flashModes =
> > parameters.getSupportedFlashModes();
> >             String flashMode = parameters.getFlashMode();
> >             // Check if camera flash exists
> >             if (flashModes == null) {
> >                 return;
> >             }
> >             if (!Parameters.FLASH_MODE_OFF.equals(flashMode)) {
> >                 // Turn off the flash
> >                 if (flashModes.contains(Parameters.FLASH_MODE_OFF)) {
> >
> > parameters.setFlashMode(Parameters.FLASH_MODE_OFF);
> >                     mCamera.setParameters(parameters);
> >                     mCamera.stopPreview();
> >                 } else {
> >                     Log.e(TAG, "FLASH_MODE_OFF not supported");
> >                 }
> >             }
> >         }
> >     }
> >
> > On 2月7日, 下午1时14分, Matt Clark <mrclark32...@gmail.com> wrote:
> >
> >
> >
> >
> >
> >
> >
> > > Even as hundreds of other have made them, i am trying my hand at a
> > > flashlight app. I have the basic GUI and widget working and toggling,
> > > and i just attempted to implement the actual flash from the phone.
> > > I have found many places that this is most easily done with this
> > > snippet of code:
> >
> > > Camera mCamera =Camera.open();
> > > Parameters params = mCamera.getParameters();
> > > params.setFlashMode( Parameters.FLASH_MODE_TORCH );
> > > mCamera.setParameters( params );
> >
> > > I have tried this code, and every time i run the app it crashes,
> > > giving me an output in LogCat of the following:
> >
> > > 02-07 00:04:49.130: E/AndroidRuntime(4861): Caused by:
> > > java.lang.RuntimeException: Fail to connect to camera service
> >
> > > Every other app that uses the camera or flash works fine, and i have
> > > no idea what is causing it to fail.
> >
> > > In my android manifest i have:
> >
> > > <uses-permission android:name="android.permission.FLASHLIGHT" />
> > > <uses-parmission android:name="android.permission.CAMERA" />
> > > <uses-feature android:name="android.hardware.camera" />
> > > <uses-feature android:name="android.hardware.camera.flash" />
> >
> > > Any and all help is greatly appreciated as I am completely stuck after
> > > sitting at this for the last several hours...
> > > Thanks
> > > ~Matt
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to android-developers@googlegroups.com
> To unsubscribe from this group, send email to
> android-developers+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to