我想将图像(从url)存储到sqlite数据库中.
为此,我使用:
db = new DataBase(getApplicationContext());
URL url = new URL("http://sree.cc/wp-content/uploads/schogini_team.png");
URLConnection ucon = url.openConnection();
InputStream is = ucon.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is,128);
ByteArrayBuffer barb= new ByteArrayBuffer(128);
int current = 0;
while ((current = bis.read()) != -1) {
barb.append((byte) current);
}
ContentValues filedata= new ContentValues();
filedata.put(DataBase.IMG_SRC,barb.toByteArray());
db.insert(DataBase.Table_Img, null, filedata);
Run Code Online (Sandbox Code Playgroud)
在Insert():
public void insert(String tableImg, Object object,
ContentValues dataToInsert) {
// TODO Auto-generated method stub
String sql = "INSERT INTO "+tableImg+" ("+ID+","+IMG_SRC+") " +
"VALUES ('"+1+"','"+dataToInsert+"')";
db.execSQL(sql);
} …Run Code Online (Sandbox Code Playgroud) 我注意到MediaStore.Images.ImageColumns的一个奇怪的列叫做" MINI_THUMB_MAGIC ".
文档说的只是:
迷你拇指id.
类型:INTEGER
常数值:"mini_thumb_magic"
我的猜测是这个字段与MediaStore.Images.Thumbnails有关.
这是对的吗 ?如果没有,这是什么以及如何使用它?
如果它是正确的,我还有其他相关的问题:
它是原始图像的迷你尺寸图像吗?它使用相同的宽高比还是对它进行中心裁剪?
为什么"MICRO"的大小是方形(96 x 96),"MINI"的大小是非方形矩形(512 x 384)?
你如何使用它?我的猜测是,它是通过使用"做THUMB_DATA ",这是一个blob,所以你使用它像这样,但是那又有什么用"的宗旨getThumbnail "如果你已经有了这个领域?
如果方向值不为0,它会获得旋转的缩略图吗?意思是如果我想展示它,我不需要旋转图像?
是否可以与缩略图一起查询图像?也许使用内连接?
它适用于所有Android设备和版本吗?
为什么它甚至被称为"魔术"?是因为它也适用于视频(由于某种原因,音乐不存在,例如,它可能是专辑的封面照片)?
sql android mediastore android-contentresolver android-gallery