diff options
-rw-r--r-- | docs/downloads/training/BitmapFun.zip | bin | 430475 -> 430504 bytes | |||
-rw-r--r-- | docs/html/training/displaying-bitmaps/cache-bitmap.jd | 15 |
2 files changed, 8 insertions, 7 deletions
diff --git a/docs/downloads/training/BitmapFun.zip b/docs/downloads/training/BitmapFun.zip Binary files differindex c4ea7aa..882ce03 100644 --- a/docs/downloads/training/BitmapFun.zip +++ b/docs/downloads/training/BitmapFun.zip diff --git a/docs/html/training/displaying-bitmaps/cache-bitmap.jd b/docs/html/training/displaying-bitmaps/cache-bitmap.jd index 2a333cc..417ec5b 100644 --- a/docs/html/training/displaying-bitmaps/cache-bitmap.jd +++ b/docs/html/training/displaying-bitmaps/cache-bitmap.jd @@ -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; } }; ... |