wjc
2025-05-07 b9cc7390e8e8ce64c41c26fb369c98ce669d660c
app/src/main/java/com/hdl/photovoltaic/ui/device/ScanActivity.java
@@ -253,41 +253,41 @@
    }
    private void initCamera(SurfaceHolder surfaceHolder) {
        PermissionUtils.requestPermissionsResultCallback(this, Manifest.permission.CAMERA, new PermissionUtils.PermissionState() {
            @Override
            public void Success(int value) {
                if (value == PermissionUtils.STATUS_REFUSE_PERMANENT | value == PermissionUtils.STATUS_REFUSE) {
//                            HdlThreadLogic.toast(_mActivity, R.string.permission_open);
                    Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
                    return;
                }
//        PermissionUtils.requestPermissionsResultCallback(this, Manifest.permission.CAMERA, new PermissionUtils.PermissionState() {
//            @Override
//            public void Success(int value) {
//                if (value == PermissionUtils.STATUS_REFUSE_PERMANENT | value == PermissionUtils.STATUS_REFUSE) {
////                            HdlThreadLogic.toast(_mActivity, R.string.permission_open);
//                    Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
//                    return;
//                }
                if (surfaceHolder == null) {
                    throw new IllegalStateException("No SurfaceHolder provided");
                }
                if (cameraManager.isOpen()) {
                    Log.w(TAG, "initCamera() while already open -- late SurfaceView callback?");
                    return;
                }
                try {
                    cameraManager.openDriver(surfaceHolder);
                    // Creating the handler starts the preview, which can also throw a
                    // RuntimeException.
                    if (handler == null) {
                        handler = new CaptureActivityHandler(ScanActivity.this, cameraManager, DecodeThread.ALL_MODE);
                    }
                    initCrop();
                } catch (IOException ioe) {
                    Log.w(TAG, ioe);
                    Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
                    finish();
                } catch (RuntimeException e) {
                    Log.w(TAG, "Unexpected error initializing camera", e);
                    Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
                    finish();
                }
        if (surfaceHolder == null) {
            throw new IllegalStateException("No SurfaceHolder provided");
        }
        if (cameraManager.isOpen()) {
            Log.w(TAG, "initCamera() while already open -- late SurfaceView callback?");
            return;
        }
        try {
            cameraManager.openDriver(surfaceHolder);
            // Creating the handler starts the preview, which can also throw a
            // RuntimeException.
            if (handler == null) {
                handler = new CaptureActivityHandler(ScanActivity.this, cameraManager, DecodeThread.ALL_MODE);
            }
        }, true);
            initCrop();
        } catch (IOException ioe) {
            Log.w(TAG, ioe);
            Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
            finish();
        } catch (RuntimeException e) {
            Log.w(TAG, "Unexpected error initializing camera", e);
            Toast.makeText(ScanActivity.this, R.string.capture_no_camera, Toast.LENGTH_SHORT).show();
            finish();
        }
//            }
//        }, true);
    }
    public void restartPreviewAfterDelay(long delayMS) {