如何解决如何在Android中以编程方式无布局获取camera2预览帧?
我创建了一个前台服务,目的是从camera2预览中获取帧而不向用户显示布局。当我在布局中创建一个Textureview并使用它时,一切工作正常,我可以通过调用TextureView的getBitmap(int width,int height)获得帧。我已经保存了帧,我知道它可以正常工作。这是我的代码:
textureView = mainActivity.findViewById(R.id.texture_view);
surfaceTexture = textureView.getSurfaceTexture();
surface = new Surface(surfaceTexture);
但是我需要代码无需布局即可工作。我已经以编程方式创建了TextureView,但是当我运行它并保存帧时,它们是空白的。这是我运行的代码,以使其无需布局即可工作:
textureView = new TextureView(context);
textureView.setSurfaceTexture(new SurfaceTexture(100));
surfaceTexture = textureView.getSurfaceTexture();
surface = new Surface(surfaceTexture);
仅供参考,我在工作线程上运行代码。我也尝试过使用这些对象的侦听器,但是没有运气。谁能指出我正确的方向?
解决方法
我认为您不能避免使用表面。 但是也许您可以通过使用布局高度和宽度0dp动态填充它来摆脱困境。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。