2012-08-08 18 views
17

W/CursorWindow(15677):ウィンドウがいっぱいです:要求された割り当て2195889 バイト、空き領域2096720バイト、ウィンドウサイズ2097152バイト私が知っているアンドロイド:カーソルウィンドウがいっぱいになっている

アプリメモリavaliableあり:

D/dalvikvm(15677):GC_FOR_ALLOCは、9K、自由30%17050K/24291K解放45ms

ように、その純粋に一時停止しましたblobbyte[]に読み込んだときに、カーソルサイズのウィンドウで行います。

Imは、カーソルからブロブを読み取る組み込みのメソッドを使用しています。

try 
    { 
     c = rdb.query("Photos", new String[]{"photo"}, "id = ?", new String[]{""+photoID}, null, null, null); 
     if(c.moveToFirst()) 
     { 
      byte[] tArray = c.getBlob(c.getColumnIndex("photo")); // THIS LINE ERRORS 
     }    
    }catch(Exception e) 
    { 
     e.printStackTrace(); 
    } 
    c.close(); 

    return tArray; 

方法はありますか?ウィンドウのサイズは2097152バイトに制限されているようです。

答えて

15

これを回避する最善の方法は、SDCardに写真を保存し、そのURIをDBに保存することです。

私はこれを避けたいと思っていましたが、あまりにも悪くないし、はるかに安定しています。

関連する問題