【发布时间】:2021-04-05 00:36:57
【问题描述】:
在 android 10 和 11(SDK 编号 29 和 30)中,音乐封面(艺术品)格式与以前的版本不同,事实上,它们不能作为支持的图像文件(例如 jpg 或 png)来读取,它们是 uint8lists,只有 Image.memory 小部件接受并显示它们。
现在,我的问题是我不想将它们作为记忆图像读取,我需要 jpg 等文件。
搜索了很多!阅读了很多,发现只有 1,没有工作的解决方案! 那就是将unit8list作为字节写入文件中,其路径以“.jpg”结尾。 正如我所说,它不起作用。
有人可以帮忙吗?
提前致谢,
final io.File image = File('directory/image.jpg').create();
image.writeAsBytesSync(uint8list);
uint8list 示例:[255, 216, 255, 224, 0, 16, 74, 70, 73, 70, 0, 1, 1, 0, 0, 1, 0, 1, 0, 0, 255, 226 , 2, 40, 73, 67, 67, 95, 80, 82 ,...]
长度:数千
【问题讨论】:
-
“它们是 uint8lists” - 你是怎么读的?他们的magic number是什么?
-
@sanghuynh 我猜你误解了我的问题!我想将 unit8list 解码为 jpg 而不是对其进行编码!
-
@pskink 对uint8lists了解不多,只知道是一种将图片压缩成字符串数据的编码方式。
-
@pskink Flutter_audio_query 包提供了它们。
标签: flutter dart flutter-layout uint8array uint8list