【发布时间】:2012-08-08 10:55:18
【问题描述】:
W/CursorWindow(15677):窗口已满:请求分配 2195889 字节,可用空间 2096720 字节,窗口大小 2097152 字节
我知道有可用的应用内存:
D/dalvikvm(15677):GC_FOR_ALLOC 释放 9K,30% 释放 17050K/24291K,暂停 45ms
因此,当将blob 读入byte[] 时,它纯粹与光标大小窗口有关。
我使用内置方法从游标读取 blob。
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 字节。
【问题讨论】:
标签: android memory sqlite blob