我使用以下代码将图像保存到SD卡。
但是如何获取已保存图像的图像路径,因为我想在下一个活动中使用此路径为ImageView设置Image。
我尝试使用onActivityResult()
但无法获得路径。
由于onActivitySesult()
仅在我们想要打开浏览文件的意图时触发,但我想在不打开图库或意图获取文件路径的情况下进行访问。
任何积分都会有所帮助。
期待你的回复。
感谢。
PictureCallback myPictureCallback_JPG = new PictureCallback(){
@Override
public void onPictureTaken(byte[] arg0, Camera arg1) {
// TODO Auto-generated method stub
FileOutputStream outStream = null;
try {
// Write to SD Card
outStream = new FileOutputStream(String.format("/sdcard/%d.jpg",System.currentTimeMillis()));
outStream.write(arg0);
outStream.close();
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+ Environment.getExternalStorageDirectory())));
Toast.makeText(Photo.this, "Image Saved to SD Card", Toast.LENGTH_SHORT).show();
System.out.println();
} catch (FileNotFoundException e) {
e.printStackTrace();
//Log.e("Photo", "Image files get saved in SD Card only",e);
} catch (IOException e) {
e.printStackTrace();
}
camera.startPreview();
}};
答案 0 :(得分:1)
尝试这种方式:
将System.currentTimeMillis()分配给String或long并将其传递给文件输出流。
try {
String stored_date=System.currentTimeMillis()+"";
outStream = new FileOutputStream(String.format("/sdcard/%d.jpg",stored_date));
outStream.write(arg0);
outStream.close();
sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,Uri.parse("file://"+ Environment.getExternalStorageDirectory())));
Toast.makeText(Photo.this, "Image Saved to SD Card", Toast.LENGTH_SHORT).show();
System.out.println();
} catch (FileNotFoundException e) {}
catch (IOException e) {}