start method
must call this method before using the other methods
Implementation
Future<void> start() async {
try {
metadata = await cache?.get(url);
if (metadata != null) {
// Refresh the cache on background
return getPreviewData(url).then(
(data) => cache?.set(url, LinkPreviewData.fromPreviewData(data)),
);
}
metadata = LinkPreviewData.fromPreviewData(await getPreviewData(url));
cache?.set(url, metadata!);
} catch (e, s) {
debugPrint('$e\n$s');
metadata = null;
}
}