У меня есть простое приложение, которое делает снимок для отправки на сервер. Приложение работает отлично и все, но по каким-то странным и неизвестным причинам оно всегда вылетает на устройствах LG-G6 при тестировании в Google.
Журналы сбоев отчета перед запуском всегда указывают на следующий код, который устанавливает режим FOCUS .
Я перепробовал все режимы вспышки, но приложение вылетает.
if(getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_AUTOFOCUS)) {
parameters.setFocusMode(Camera.Parameters.FOCUS_MODE_CONTINUOUS_PICTURE);
camera.setParameters(parameters); //line 328
}
Ниже приводится выдержка из журнала сбоев
ИСКЛЮЧИТЕЛЬНОЕ ИСКЛЮЧЕНИЕ: Процесс ControllerMessenger:
com.localgsa.HcadPublicA, PID: 11403 java.lang.RuntimeException:
Ошибка setParameters
android.hardware.Camera.native_setParameters (собственный метод) в
android.hardware.Camera.setParameters (Camera.java:2034) в
com.localgsa.hcad.activities.license_capture.LicenseFrontCaptureActivity.surfaceChanged (LicenseFrontCaptureActivity.java:328)
на android.view.SurfaceView.updateWindow (SurfaceView.java:646) на
android.view.SurfaceView $ 3.onPreDraw (SurfaceView.java:162) в
android.view.ViewTreeObserver.dispatchOnPreDraw (ViewTreeObserver.java:944)
в
android.view.ViewRootImpl.performTraversals (ViewRootImpl.java:2288)
на android.view.ViewRootImpl.doTraversal (ViewRootImpl.java:1306) на
android.view.ViewRootImpl $ TraversalRunnable.run (ViewRootImpl.java:6579)
в
android.view.Choreographer $ CallbackRecord.run (Choreographer.java:871)
на android.view.Choreographer.doCallbacks (Choreographer.java:683) на
android.view.Choreographer.doFrame (Хореограф.java:619) в
android.view.Choreographer $ FrameDisplayEventReceiver.run (Choreographer.java:857)
на android.os.Handler.handleCallback (Handler.java:751) на
android.os.Handler.dispatchMessage (Handler.java:95) в
androidx.test.espresso.base.Interrogator.a (Interrogator.java:19) в
androidx.test.espresso.base.UiControllerImpl.a (UiControllerImpl.java:164)
в
androidx.test.espresso.base.UiControllerImpl.a (UiControllerImpl.java:156)
в
androidx.test.espresso.base.UiControllerImpl.a (UiControllerImpl.java:34)
на androidx.test.espresso.action.MotionEvents.a (MotionEvents.java:75)
на androidx.test.espresso.action.MotionEvents.a (MotionEvents.java:50)
на androidx.test.espresso.action.Tap.c (Tap.java:9) на
androidx.test.espresso.action.Tap.a (Tap.java:19) в
androidx.test.espresso.action.Tap $ 1.b (Tap.java:2) в
androidx.test.espresso.action.GeneralClickAction.perform (GeneralClickAction.java:22)
в
androidx.test.espresso.ViewInteraction $ SingleExecutionViewAction.perform (ViewInteraction.java:9)
на androidx.test.espresso.ViewInteraction.a (ViewInteraction.java:78)
на androidx.test.espresso.ViewInteraction.a (ViewInteraction.java:94)
в
androidx.test.espresso.ViewInteraction $ 1.call (ViewInteraction.java:3)
в java.util.concurrent.FutureTask.run (FutureTask.java:237) в
android.os.Handler.handleCallback (Handler.java:751) в
android.os.Handler.dispatchMessage (Handler.java:95) в
android.os.Looper.loop (Looper.java:154) в
android.app.ActivityThread.main (ActivityThread.java:6316) в
java.lang.reflect.Method.invoke (родной метод) в
com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:872)
на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:762)
Может ли кто-нибудь дать мне некоторое понимание? Эта проблема беспокоит меня некоторое время.
P.S. У меня нет физического устройства LG G6. Я протестировал приложение на чуть более старом устройстве LG, и приложение работало нормально.