添加權限
由於是對SD card進行操作,必不可少的就是爲你的程序添加讀寫權限,需要添加的內容如下:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"></uses-permission>
對這兩個權限進行簡要解釋如下:
"android.permission.MOUNT_UNMOUNT_FILESYSTEMS"-->允許掛載和反掛載文件系統可移動存儲
"android.permission.WRITE_EXTERNAL_STORAGE"-->模擬器中sdcard中創建文件夾的權限
調用該方法的時候只需要將Bitmap文件傳入就可以啦。
// 指紋圖片存放路徑
public String sdCardDir = Environment.getExternalStorageDirectory() + "/fingerprintimages/";
/**
* 保存指紋圖片
*
* @param bitmap
*/
private void saveBitmap(Bitmap bitmap) {
try {
File dirFile = new File(sdCardDir);
if (!dirFile.exists()) { //如果不存在,那就建立這個文件夾
dirFile.mkdirs();
}
File file = new File(sdCardDir, tmplName + ".jpg");
FileOutputStream fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
// 把文件插入到系統圖庫
try {
MediaStore.Images.Media.insertImage(this.getContentResolver(),
file.getAbsolutePath(), fileName, null);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
// 通知圖庫更新
sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE,
Uri.parse("file://" + "/sdcard/namecard/")));
}