手电筒(手电筒)正在打开但没有关闭

塔萨尔·戈尼亚

以下是我用来打开和关闭Torch的代码。但是当我关闭它时,它崩溃了。LogCat说“运行时异常:无法连接到摄像头服务”!

+ hasFlash没有得到任何值,并抛出了Nullpointer异常。(我正在使用它来检查闪光灯是否存在。)

我究竟做错了什么?

boolean hasFlash = this.getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH);
if(hasFlash==true)

{

            if(s.equalsIgnoreCase("FlashLight On") || s.equalsIgnoreCase("Flash Light On"))
            {
                Camera cam = Camera.open();     
                Parameters p = cam.getParameters();
                p.setFlashMode(Parameters.FLASH_MODE_TORCH);
                cam.setParameters(p);
                return "Turning on";

            }
            if(s.equalsIgnoreCase("FlashLight Off") || s.equalsIgnoreCase("Flash Light Off"))
            {

                Camera cam = Camera.open();
                Parameters p = cam.getParameters();
                p.setFlashMode(Parameters.FLASH_MODE_OFF);
                cam.setParameters(p);
                cam.stopPreview();
                cam.release();

                return "Turning off";
            }
            }
            else
            {
                return "Flash Not Available";
            }
乔布泰维奇

改变

Camera cam = Camera.open();
Parameters p = cam.getParameters();
p.setFlashMode(Parameters.FLASH_MODE_OFF);
cam.setParameters(p);
cam.stopPreview();
cam.release();

return "Turning off";

cam.stopPreview();
cam.release();

return "Turning off";

在构建适用于Android的开源手电筒时,我遇到了很多此类问题,这可能会帮助您解决其他问题。

Joe github的手电筒

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章