Android TextureView.getBitmap()非常慢

时间:2013-05-31 04:40:34

标签: android

我有一个Android应用程序,相机配置为将其预览发送到TextureView。在我的SurfaceTextureListener的onSurfaceTextureUpdated方法中,我使用以下方法将预览框架拉出为位图:

textureView.getBitmap(existingBitmap);

它工作正常,但需要很长时间(对于720x1280图像,大约需要200-250毫秒)。看来这应该快得多。有关如何改善此操作性能的任何想法?

1 个答案:

答案 0 :(得分:-1)

使用此命令获取预览会从预览中生成新的位图,这就是应用程序需要这么长时间。我的建议是在此链接中解释的后台线程中执行此操作:

http://developer.android.com/reference/android/os/AsyncTask.html

它还允许您堆叠需要在onPostExecute函数中首先完成此操作的操作。

这将允许主UI线程运行并响应用户在此期间可能需要做的任何事情。

这可能不是你想要的完美答案,但希望它有所帮助。