How to save ImageProvider<object> image file to Gallery?

Viewed 39

I want to save the ImageProvider<Object> file that I received from arSessionManager.snapshot() to my gallery.

However, ImageGallerySaver.saveImage() can only use Uint8List image.

What should I do?

This is my code.

Future<void> onTakeScreenshot() async {
    ImageProvider<Object> capture = await arSessionManager.snapshot();
    await showDialog(
      context: context,
      builder: (_) => Dialog(
        child: Container(
          decoration: BoxDecoration(
              image: DecorationImage(image: capture, fit: BoxFit.cover)),
        ),
      ),
    );
    await ImageGallerySaver.saveImage(capture); // the problematic part
  }
1 Answers

It should be the following:

await ImageGallerySaver.saveImage((capture as MemoryImage).bytes);
Related