Skip to content

eyeem/flutter_cache_manager_hive

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

flutter_cache_manager_hive

pub package

Just like flutter_cache_manager but uses hive instead of sqlite to store cache object information.

EXPERIMENTAL

Usage

You should register CacheObjectAdapter during hive initalization and pass a box to the HiveCacheManager - this box will be where cache information will be stored.

/// register with the number of your choice (or default)
Hive.registerAdapter(CacheObjectAdapter(typeId: 42))

/// provide the caching box
final box = Hive.openBox('image_cache_info.hive');

/// finally whenever you are using cached network image library:
CachedNetworkImage(
   imageUrl: "http://via.placeholder.com/350x150",
   placeholder: (context, url) => CircularProgressIndicator(),
   errorWidget: (context, url, error) => Icon(Icons.error),
   cacheManager: HiveCacheManager(box: box) // this is a singleton factory
)

Performance

What this cache manager does is improving access time for cache information. It doesn't change how image binary data is loaded or saved.

The following results are generated by benchmark app included in this repo on Pixel 3.

About

A hive implementation for flutter_cache_manager

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Dart 83.1%
  • Ruby 12.5%
  • Swift 3.1%
  • Other 1.3%