How to download image from network and use as an asset image offline in flutter

Ahmed Wagdi :

I am using sqlflite flutter package to manage a small database for my app, there is a table where I have some urls for few images from the internet , but I need to save them and use the files instead of urls to show this images later. I mean I want to do something like this :

bool internet
internet ? Image.network('the_url') : Image.assets("path to image in my assets folder")

so, is there any way to fetch images from urls and save it to be able to access it later?

dadu mohapatra :

You can download the image with NetworkAssetBundle and convert to Unint8List

final ByteData imageData = await NetworkAssetBundle(Uri.parse("YOUR_URL")).load("");
final Uint8List bytes = imageData.buffer.asUint8List();

Then you can load it through Image.memory() widget

Image.memory(bytes);

You can store that data in sqflite and retrive when needed

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=175047&siteId=1