Android 10 (API-29) - Android camera2. Ошибка создания предварительного просмотра камеры - PullRequest
0 голосов
/ 12 февраля 2020

Я обычно использовал android camera2, пока не появилось устройство android 10. Предварительный просмотр камеры не может быть установлен на устройствах с api-29. Я получаю исключение NullPointerException. Кто-нибудь видел что-то подобное?

private void createCameraPreview () {

    try {

        DisplayMetrics displayMetrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
        DSI_height = displayMetrics.heightPixels;
        DSI_width = displayMetrics.widthPixels;

        CameraCharacteristics characteristics = manager.getCameraCharacteristics(cameraDevice.getId());
        StreamConfigurationMap map = characteristics.get(
                CameraCharacteristics.SCALER_STREAM_CONFIGURATION_MAP);

        if (map == null) {
            throw new IllegalStateException("Failed to get configuration map: " + cameraId);
        }

        Size[] sizes = map.getOutputSizes(SurfaceTexture.class);
        //inverter por conta de como sao lidas as medidas


        Size size = getOptimalSize(sizes, DSI_width, DSI_height);
        SurfaceTexture texture = textureView.getSurfaceTexture();

Размер объекта возвращает ноль только на Android 10 устройствах (API-29 )

2020-02-12 18: 05: 28.030 10390-10433 / com.cromai.capture E / AndroidRuntime: ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: CameraBackground Процесс: com.cromai.capture, PID: 10390 java .lang.NullPointerException: попытка вызвать виртуальный метод 'int android .util.Size.getHeight ()' для нулевой ссылки на объект в com.cromai.capture.CamActivity.createCameraPreview (CamActivity. java: 679) на com.cromai.capture.CamActivity.access $ 200 (CamActivity. java: 67) на com.cromai.capture.CamActivity $ 1.onOpened (CamActivity. java: 166) на android .hardware.camera2 .impl.CameraDeviceImpl $ 1.run (CameraDeviceImpl. java: 145) в android .os.Handler.handleCallback (Обработчик. java: 883) в android .os.Handler.dispatchMessage (Обработчик. * 1028) *: 100) при android .os.Looper.l oop (Looper. java: 214) при android .os.HandlerThread.run (HandlerThread. java: 67) 202 0-02-12 18: 05: 28.066 10390-10423 / com.cromai.capture D / EGL_emulation: eglMakeCurrent: 0xda71a120: ver 2 0 (tinfo 0xda70f100) 2020-02-12 18: 05: 42.091 10390-10433 / com. cromai.capture I / Процесс: отправка сигнала. PID: 10390 SIG: 9

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