// Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
// startActivityForResult(camera, CAMERA);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// TODO Auto-generated method stub
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == Activity.RESULT_OK) {
String sdStatus = Environment.getExternalStorageState();
if (!sdStatus.equals(Environment.MEDIA_MOUNTED)) { // 檢測sd是否可用
Log.i("DoubleScreenCameraTestFile", "SD card is not avaiable/writeable right now.");
return;
}
//獲取相機返回的數據
Bundle bundle = data.getExtras();
Bitmap bitmap = (Bitmap) bundle.get("data");// 轉換爲Bitmap圖片格式
//獲取系統當前時間 yy-mm-dd
Date date=new Date();
SimpleDateFormat format=new SimpleDateFormat("yyyyMMdd");
String time=format.format(date);
System.out.println(time);
try {
// 使用IO流將照片寫入指定文件
String DCIMPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM).toString();
final String DIRECTORY = DCIMPath + "/Camera";
file = new File(DIRECTORY,"/IMG_"+time+"_"+".jpg");
output = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, output);// 把數據寫入文件
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
try {
output.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
//更新媒體庫
MediaScannerConnection.scanFile(getApplicationContext(), new String[] { file.toString() }, null,
new MediaScannerConnection.OnScanCompletedListener(){
@Override
public void onScanCompleted(
String path, Uri uri) {
// TODO Auto-generated method stub
}
} );
}