android - 尝试关闭相机 LED 时,应用程序崩溃

标签 android camera led

我有密码

 @TargetApi(23)
 private void setTorchMode( CameraManager cameraManager, String id, boolean switchOn) throws CameraAccessException {


      try {
            final Method setTorchMode = cameraManager.getClass().getMethod("setTorchMode", String.class, boolean.class);
            cameraManager.setTorchMode(cameraManager.getCameraIdList()[0],switchOn);
            callbackContext.success();
      } catch (IllegalArgumentException m){

      } catch (Throwable t) {
            callbackContext.error(t.getMessage());
      }

当我尝试关闭相机 LED 时,我崩溃了

FATAL EXCEPTION: main
Process: uk.co.sparkenergy.androidapp2, PID: 31200    java.lang.IllegalArgumentException: Receiver not registered: android.hardware.camera2.CameraManager$1@6e1ab65
                                                                               at android.app.LoadedApk.forgetReceiverDispatcher(LoadedApk.java:793)
                                                                               at android.app.ContextImpl.unregisterReceiver(ContextImpl.java:1200)
                                                                               at android.hardware.camera2.CameraManager$3.run(CameraManager.java:1266)
                                                                               at android.os.Handler.handleCallback(Handler.java:815)
                                                                               at android.os.Handler.dispatchMessage(Handler.java:104)
                                                                               at android.os.Looper.loop(Looper.java:207)
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5763)
                                                                               at java.lang.reflect.Method.invoke(Native Method)
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:679)

只有 1 台设备 Sony e5633,请帮忙)

最佳答案

在某些设备上,如果手电筒被禁用并且您尝试再次禁用它,则应用程序会崩溃。所以解决办法只有切换手电筒的状态。

关于android - 尝试关闭相机 LED 时,应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38955071/

相关文章:

node.js - 字符串压缩可更快地刷新 WS2811 RGB LED

android - ACR122U LED控制

android - 单击按钮时从 LED 灯制作频闪灯

java - 具有一组有限键且每个键仅接受一种类型的值的 Hashmap?

android - Gradle项目同步完成,代理中有一些错误

java - 出现时android获取adMob横幅高度

Android 谷歌地图 : how to move a marker and the camera synchronously?

android前后摄像头捕获的图片方向问题,以错误的方式旋转

android - 声音录制

iphone - 如何在 iOS 7 中强制相机拍摄方形照片