各手機廠商實現不太一致,當保存圖片後打開gallery時,有的會自動給你刷新,有的不行,這樣就導致圖片保存到SD卡上時,不能及時在gallery中看到,遇到這種情況最好是自己刷新。
通過 Intent.ACTION_MEDIA_MOUNTED 進行整個SD卡掃描:
public void sdScan(){
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://"
+ Environment.getExternalStorageDirectory())));
}
通過 Intent.ACTION_MEDIA_SCANNER_SCAN_FILE 掃描某個文件:
public void fileScan(String filePath){
Uri data = Uri.parse("file://"+filePath);
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, data));
}
注:filePath爲圖片在SD卡中的地址,當保存圖片後,調用以上方法即可;
sendBroadcast爲類Context的一個方法。