Я обычно использовал 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