android.hardware.camera2.CameraAccessException: устройство камеры уже используется - PullRequest
0 голосов
/ 30 ноября 2018

Я создаю простое флэш-приложение, но, похоже, оно не работает, поскольку дает мне исключение CameraAccessException, которое говорит, что камера уже используется.

Это мой код для включения вспышки.

private void turnFlashlightOff() {

        if (is_flash_on) {
            if (mCamera == null || p == null) {
                return;
            }

            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
                try {
                    String cameraId;
                    camManager = (CameraManager) this.getSystemService(Context.CAMERA_SERVICE);
                    if (camManager != null) {
                        cameraId = camManager.getCameraIdList()[0];
                        camManager.setTorchMode(cameraId, false);
                    }
                } catch (CameraAccessException e) {
                    e.printStackTrace();
                    Toast.makeText(getApplicationContext(), e.getMessage() , Toast.LENGTH_SHORT).show();

                }
            } else {
                p = mCamera.getParameters();
                p.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
                mCamera.setParameters(p);
                mCamera.stopPreview();
                is_flash_on = false;
                torchImageView.setImageResource(R.drawable.ic_lightbulb_outline_black_24dp);
            }

        }

    }

Любой рабочий раствор будет плодотворным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...