从其他应用

时间:2018-06-11 06:51:05

标签: android flutter android-drawable

我希望在我的flutter应用中显示与当前版本不同的packageName中的应用图标。平台通道无法传输可绘制/位图。这项任务的实践是什么? (这是仅限Android的功能)

1 个答案:

答案 0 :(得分:0)

使用

Bitmap.compress (Bitmap.CompressFormat format, 
            int quality, 
            OutputStream stream)

到ByteArrayOutputStream以获取PNG格式的字节数组,该字节数组可以跨平台通道,然后在Flutter端返回结果List<int>。 (检查List<int>是否已经是Uint8List,否则将其转换。)

根据您的使用情况,flutter中有两种类型的Image。正常的是Widget - 用Image.memory创建它。如果要在Canvas上绘制生成的图像,则另一种形式(ui.Image)类似于位图。

Future<Codec> instantiateImageCodec (
  Uint8List list
)