我稍微思考了一下
之前一直OOM可能是因为我为了复用输入流而用BufferInputStream复制了URLConnection开的InputStream而且在写缓存的时候还用BufferOutputStream来写出结果导致在写出缓存的时候光IO流就占了几乎三倍于图片本身大小的内存再加上加载的都是大图于是连一屏三张图片都加载不完内存就在写出磁盘缓存的时候爆了。
我说怎么跟说好的不一样OOM不是在读取图片并显示的时候发生而是每次都在DiskLruCache写出缓存的时候发生的呢。
嗯……
之前一直OOM可能是因为我为了复用输入流而用BufferInputStream复制了URLConnection开的InputStream而且在写缓存的时候还用BufferOutputStream来写出结果导致在写出缓存的时候光IO流就占了几乎三倍于图片本身大小的内存再加上加载的都是大图于是连一屏三张图片都加载不完内存就在写出磁盘缓存的时候爆了。
我说怎么跟说好的不一样OOM不是在读取图片并显示的时候发生而是每次都在DiskLruCache写出缓存的时候发生的呢。
嗯……