我是使用 CameraX + ZXing 做个扫码工具的(自用)
做完之后发现别的手机都能用,就我自己的 1+7P 不行…
几经测试,发现是隐藏了 toolbar 导致 imageProxy 里的图片是花的
只有是否隐藏 Toolbar 的区别
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
如图,上面是预览界,下面的黑白图片是从 PlanarYUVLuminanceSource 里取的
val luminanceSource = PlanarYUVLuminanceSource(data, image.width, image.height, 0, 0, image.width, image.height, false)
val pixels = luminanceSource.renderThumbnail()
val bitmap = Bitmap.createBitmap(image.width / 2, image.height / 2, Bitmap.Config.ARGB_8888)
bitmap.setPixels(pixels, 0, image.width / 2, 0, 0, image.width / 2, image.height / 2)
图一有 toolbar 情况图二没有
CameraX + ZXing 代码参考 -> [medium] ( https://medium.com/@msasikanth/qr-scanning-using-camerax-4757ed3687f8)
小米 8 和另一部老手机都是可以的目前只在 1+7P OOS 上出了这个问题…
对图像这块不熟,不知道这是哪儿出的问题。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.