在Android中以不同的模式打开手电筒

我们都在这里疯了

如下代码可在不支持手电筒的Android设备(如摩托罗拉剃须刀)上正常工作吗?有人能好心地测试一下是否有这样的电话,请告诉我。

提前致谢!!

       if (!isFlashOn) {
           if (camera == null || params == null) {
               return;
             }     
           List<String> flashModes = params.getSupportedFlashModes();
           if(flashModes.contains(Parameters.FLASH_MODE_TORCH)){

          try { 
                   params = camera.getParameters();
                   params.setFlashMode(Parameters.FLASH_MODE_TORCH);
                   camera.setParameters(params);
                   camera.startPreview();
                   toggleButtonImage();
                   isFlashOn = true;

           }catch (RuntimeException e) {
            }

           }

           else {
                    params = camera.getParameters();
                    params.setFlashMode(Parameters.FLASH_MODE_ON);
                    camera.setParameters(params);
                    camera.startPreview();
                    toggleButtonImage();
                    isFlashOn = true;
           }
           toggleButtonImage();
           isFlashOn = true;

       }

   }

PS我是否应该另外添加类似的内容:

if (flashModes.contains(android.hardware.Camera.Parameters.FLASH_MODE_AUTO))
           {
                params.setFlashMode(Parameters.FLASH_MODE_AUTO);
                camera.setParameters(params);
                camera.startPreview();
           }

适用于Motorola g和Galaxy S4(支持手电筒)

罗伊·帕玛(ROHIT PARMAR)

如果设备支持不同的闪光模式,则可以以不同的模式打开手电筒。您可以从此开源相机代码中获取代码。开放式摄像头

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章