- MediaStore.Images.Media.BUCKET_DISPLAY_NAME,// 相冊(cè)名稱
Media內(nèi)數(shù)據(jù)庫(kù)列名整理 - 調(diào)用相機(jī)將照片存儲(chǔ)在路勁中時(shí),路徑path=“ /sdcard/DCIM/camera/ ” (注意前后的 “/”不能丟,android根目錄以 “ / ”開頭)
- 有時(shí)候 file.exit()比查詢數(shù)據(jù)庫(kù)操作更耗時(shí) 【一次性查詢多個(gè)數(shù)據(jù)集比多次查詢合適數(shù)據(jù)集耗時(shí)更長(zhǎng)】--(主要體現(xiàn)在刷新操作,一次刷新,每次都要查詢多個(gè)數(shù)據(jù)集)
- 如何在Android媒體庫(kù)中進(jìn)行分組查詢?
****在Android中使用ContentResolver查詢媒體庫(kù)時(shí)是沒有Group by參數(shù)的,但是可以追加在where參數(shù)中。****
例如查詢按文件夾查詢圖片,并且查詢每個(gè)文件夾下面的圖片數(shù)量
final String selection = "1=1) group by ([bucket_id]";
final String[] projection = new String[]{
"count([_id])",
"bucket_display_name"};
Cursor c = getContentResolver().query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI,
projection,
selection, null, null);
while (c.moveToNext() ) {
Log.e("haha", c.getString(2) + ":"+c.getInt(0));
}
c.close();
主要是注意系統(tǒng)會(huì)為where語(yǔ)句添加一對(duì)小括號(hào),即where ( … ) , 跟上面的”)(“拼接成兩對(duì)小括號(hào) ,最后拼接成的Sql語(yǔ)句為:
SELECT count([_id]), bucket_id, bucket_display_name FROM images WHERE (1=1) group by ([bucket_id])
實(shí)習(xí)開發(fā):
- 【優(yōu)化 】修改了獲取相冊(cè)信息的方式--(沒有理解leader意思,要二次查詢)
2.【問題】在相冊(cè)選擇開發(fā)中,首頁(yè)顯示照片是根據(jù)albumName,通過(guò)數(shù)據(jù)庫(kù)操作顯示照片。但在調(diào)用相機(jī)時(shí),將拍攝照片存儲(chǔ)在"/sdcard/DCIM/camera/"下時(shí),雖然已經(jīng)存儲(chǔ)在目錄中了,但為什么通過(guò)數(shù)據(jù)庫(kù)操作不能更新到?
---要通知數(shù)據(jù)庫(kù)進(jìn)行入庫(kù)操作 - 【優(yōu)化】數(shù)據(jù)庫(kù)查詢,能直接查詢到所得信息就直接查詢,盡量減少對(duì)信息進(jìn)行二次加工
【優(yōu)化】activity改為fragment
【優(yōu)化】delete刪除會(huì)有返回值,依靠返回值進(jìn)行判斷是否刪除成功