am 7e421365: am 1a551b16: am 6f680f52: Displaying Bitmaps Efficiently Training - Change memory calculation

* commit '7e4213655b19255218808afc6ccfa4e40e777e93':
  Displaying Bitmaps Efficiently Training - Change memory calculation
This commit is contained in:
Adam Koch
2013-01-14 09:31:23 -08:00
committed by Android Git Automerger
2 changed files with 8 additions and 7 deletions

View File

@@ -101,19 +101,20 @@ private LruCache<String, Bitmap> mMemoryCache;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
// Get memory class of this device, exceeding this amount will throw an
// OutOfMemory exception.
final int memClass = ((ActivityManager) context.getSystemService(
Context.ACTIVITY_SERVICE)).getMemoryClass();
// Get max available VM memory, exceeding this amount will throw an
// OutOfMemory exception. Stored in kilobytes as LruCache takes an
// int in its constructor.
final int maxMemory = (int) (Runtime.getRuntime().maxMemory() / 1024);
// Use 1/8th of the available memory for this memory cache.
final int cacheSize = 1024 * 1024 * memClass / 8;
final int cacheSize = maxMemory / 8;
mMemoryCache = new LruCache<String, Bitmap>(cacheSize) {
@Override
protected int sizeOf(String key, Bitmap bitmap) {
// The cache size will be measured in bytes rather than number of items.
return bitmap.getByteCount();
// The cache size will be measured in kilobytes rather than
// number of items.
return bitmap.getByteCount() / 1024;
}
};
...