首页 > 解决方案 > RuntimeException:getParameters 失败(空参数)

问题描述

我正在开发使用 QR 库 implementation 'me.dm7.barcodescanner:zxing:1.9.13的 Android 应用程序我面临的问题是我使用 Flash 扫描 QR 码并在收到结果后转到下一个活动,就像这样

if (resultstring != null) {
        String currentDateTimeString = java.text.DateFormat.getDateTimeInstance().format(new Date());
        Intent intent = new Intent(getActivity(), QRScannedResultActivity.class);
        intent.putExtra("sendedscannedcontent", resultstring);
        intent.putExtra("scannedtimeanddate", currentDateTimeString);
        startActivity(intent);
        resumeFun = true;
        playBeepSoundAndVibrate();
        getActivity().overridePendingTransition(R.anim.nav_default_enter_anim, R.anim.nav_default_pop_exit_anim);
    }

当我从第二个活动返回到扫描片段类时,它给了我异常错误

java.lang.RuntimeException: getParameters failed (empty parameters)
    at android.hardware.Camera.native_getParameters(Native Method)
    at android.hardware.Camera.getParameters(Camera.java:1988)
    at me.dm7.barcodescanner.core.CameraUtils.isFlashSupported(CameraUtils.java:47)
    at me.dm7.barcodescanner.core.BarcodeScannerView.setFlash(BarcodeScannerView.java:153)
    at me.dm7.barcodescanner.core.BarcodeScannerView.setupCameraPreview(BarcodeScannerView.java:90)
    at me.dm7.barcodescanner.core.CameraHandlerThread$1$1.run(CameraHandlerThread.java:31)
    at android.os.Handler.handleCallback(Handler.java:790)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:164)
    at android.app.ActivityThread.main(ActivityThread.java:6552)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:857)

仅当且仅当我使用 flash 扫描 QR 并返回时才会发生此错误。如果我在没有 Flash 的情况下正常扫描QR,它会完美运行。

我已经浏览了几个链接,但一无所获。

标签: androidfirebaseandroid-layoutkotlinandroid-fragments

解决方案


推荐阅读