我有一个简单的应用程序,可以拍摄一张照片以将其发送到服务器。该应用程序可以正常运行,但由于某些奇怪和未知的原因,在Google进行测试时,它始终会在LG-G6设备上崩溃。
启动前报告崩溃日志始终指向设置 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(Choreographer.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设备上测试了该应用程序,并且该应用程序运行良好。