タグ

2014年7月18日のブックマーク (4件)

  • Blogger

    Google のウェブログ公開ツールを使って、テキスト、写真、動画を共有できます。

  • Android : Canvas: trying to use a recycled bitmap

    Android で、Bitmap をごにゅごにゅしていると、 java.lang.RuntimeException:"Canvas: trying to use a recycled  bitmap" ってのに、出くわすことがあります。Web でいろいろ調べてみると、怪しげな解説がかなりあるので、当のところ何が正しい理解なのかをまとめておきたいと思います。 そもそも、Bitmap#recycle() をやらないといけないのは、主に Android のこの辺の実装がよろしくなくて、recycle() してやらないと、メモリリークになるよ、といわれていることが、大きな要因です。勢い、メモリリーク怖さになんでも recycle() しようとして、件の例外に遭遇することとなる訳です。しかし、どういったケースでそれが必要になるのか、筋の通った記事をあまり見かけません。 まず、誰が  ”trying

  • ImageViewとBitmap#recycle覚書 - hidecheckの日記

    開発してるとActivityにBitmapを持たせたいことってよくある でもメンバで持ってると自前で解放しなくてはならない。 Bitmapのメモリ管理はネイティブ側で管理されてるので明示的に開放する必要がある。 マジで?って思ったので実験してみた 実験内容 以下のパターンでBitmapActivityがどのように変化するかを確認 実験1 ImageViewを持たないActivity 実験2 レイアウトでImageViewを持ったActivity 実験3 レイアウトでImageViewを持ち、メンバ変数でもImageViewをもつActivity 実験4 ImageViewを持ち、メンバ変数でBitmapをもつActivity 実験5 Bitmap#recycleの正しい使い方 使うアプリ こんな感じのアプリ 実験2〜4 MainActivity>BitmapActivity>(戻るキーで)

    ImageViewとBitmap#recycle覚書 - hidecheckの日記
  • AndroidのBitmapを扱う際のTIPSメモ - @i2key のBlog

    Androidの実装をOSのバージョンが2.xの頃からしておらず最近のコーディングの仕方をキャッチアップしているので、メモを残して行きます。 画像キャッシュ メモリキャッシュ ディスクキャッシュ 大きなBitmapをメモリに読み込むときに気をつけること inPreferredConfigで画像の質を下げメモリ使用量を減らす inPurgeableでGC時に解放されるようにする inJustDecodeBoundsとinSampleSizeでメモリ読み込み時にメタ情報のみを先に読み込み、1/nサイズにしたものをロードする Bitmapオブジェクトのリサイクル 画像キャッシュ メモリキャッシュ Twitterのタイムラインを実装するような時に、APIレベル12以前は下記のように画像キャッシュをしていたと思います。WeakHashMapのがいいかもですが。 public class ImageC

    AndroidのBitmapを扱う際のTIPSメモ - @i2key のBlog