cache static method
Implementation
static void cache({required WidgetsBinding widgetsBinding}) {
widgetsBinding.addPostFrameCallback((_) async {
BuildContext? context = widgetsBinding.rootElement;
if (context != null) {
// get asset
final manifestJson = await DefaultAssetBundle.of(context)
.loadString('AssetManifest.json');
final Map<String, dynamic> manifestMap = json.decode(manifestJson);
final imageList = manifestMap.keys.toList();
List<String> extensionList = ['png', 'jpg', 'jpeg', "gif"];
imageList
.removeWhere((e) => !extensionList.contains(e.split('.').last));
for (var imageUrl in imageList) {
MImagePreCache.cacheItem(imageUrl, context);
}
}
});
}