Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android Camera2图片显示速度非常慢_Java_Android_Android Fragments_Android Camera_Android Camera2 - Fatal编程技术网

Java Android Camera2图片显示速度非常慢

Java Android Camera2图片显示速度非常慢,java,android,android-fragments,android-camera,android-camera2,Java,Android,Android Fragments,Android Camera,Android Camera2,我正在使用android camera2组件,我无法理解为什么拍完一张照片后要花很多时间才能显示在另一个活动中。基本上,当我拍摄并保存照片时,我会打开一个新的活动,它会显示拍摄的照片,但大约5秒后就会显示出来。然后我在日志中得到这些消息: 12-08 11:39:15.507 21995-22727/com.artlandapp.cameratest E/CameraDeviceGLThread-0: Received exception on GL render thread:

我正在使用android camera2组件,我无法理解为什么拍完一张照片后要花很多时间才能显示在另一个活动中。基本上,当我拍摄并保存照片时,我会打开一个新的活动,它会显示拍摄的照片,但大约5秒后就会显示出来。然后我在日志中得到这些消息:

12-08 11:39:15.507 21995-22727/com.artlandapp.cameratest       E/CameraDeviceGLThread-0: Received exception on GL render thread: 
                                                                                   java.lang.IllegalStateException: swapBuffers: EGL error: 0x300d
                                                                                      at android.hardware.camera2.legacy.SurfaceTextureRenderer.checkEglError(SurfaceTextureRenderer.java:530)
                                                                                   at android.hardware.camera2.legacy.SurfaceTextureRenderer.swapBuffers(SurfaceTextureRenderer.java:523)
                                                                                   at android.hardware.camera2.legacy.SurfaceTextureRenderer.drawIntoSurfaces(SurfaceTextureRenderer.java:727)
                                                                                   at android.hardware.camera2.legacy.GLThreadManager$1.handleMessage(GLThreadManager.java:105)
                                                                                   at android.os.Handler.dispatchMessage(Handler.java:98)
                                                                                   at android.os.Looper.loop(Looper.java:168)
                                                                                       at android.os.HandlerThread.run(HandlerThread.java:61)
12-08 11:39:15.507 21995-22727/com.artlandapp.cameratest I/CameraDeviceState: Legacy camera service transitioning to state ERROR
12-08 11:39:19.421 21995-22725/com.artlandapp.cameratest E/RequestThread-0: Timed out while waiting for request to complete.
12-08 11:39:19.421 21995-22725/com.artlandapp.cameratest W/CaptureCollector: Preview buffers dropped for request: 0
12-08 11:39:19.421 21995-22725/com.artlandapp.cameratest E/CameraDeviceState: Cannot receive result while in state: 0
12-08 11:39:19.433 21995-22725/com.artlandapp.cameratest E/CameraDeviceState: Cannot receive result while in state: 0
12-08 11:39:19.445 21995-22104/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] queueBuffer: BufferQueue has been abandoned
12-08 11:39:19.446 21995-22006/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] dequeueBuffer: BufferQueue has been abandoned
12-08 11:39:19.471 21995-22007/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] cancelBuffer: BufferQueue has been abandoned
12-08 11:39:19.471 21995-22104/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] cancelBuffer: BufferQueue has been abandoned
12-08 11:39:19.471 21995-22006/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] cancelBuffer: BufferQueue has been abandoned
12-08 11:39:19.472 21995-22007/com.artlandapp.cameratest E/BufferQueueProducer: [SurfaceTexture-1-21995-3] cancelBuffer: BufferQueue has been abandoned
12-08 11:39:19.612 21995-21995/com.artlandapp.cameratest I/Choreographer: Skipped 245 frames!  The application may be doing too much work on its main thread.

我将非常感谢任何类型的帮助或建议

您似乎没有使用AsyncTask来执行捕获操作。
您可以参考链接并检查它是否对您有帮助。

只是为了澄清-您建议将图像显示方法包装到一个异步任务中?当我拍摄这张照片时,我正在创建一个新的最终活动意图,它应该只显示已经拍摄的照片。我将Uri传递给intent extras中的照片,然后使用Glide库将其加载到imageView中。因此,根据您的要求,使用Glide加载应该在AsyncTask中完成?我会试试看,你可以试试看,不需要仔细研究你的代码,我不会给你更多的建议。