我使用以下代码创建一个文件并将图像保存到它:
private File createImageFile() throws IOException {
String timeStamp = new SimpleDateFormat("yyMMdd_HHmmss").format(new Date());
String imageFileName = "JPEG_" + timeStamp + "_";
File storageDir = getActivity().getApplicationContext().getFilesDir();
File image = File.createTempFile(imageFileName, ".jpg", storageDir);
return image;
}
当我使用image.getAbsolutePath();
时,我会得到像这样的东西:
/data/data/co.za.package.app/files/filename.jpg
图像的实际路径是:
/storage/sdcard0/Android/data/co.za.package.app/files/filename.jpg
为什么getAbsolutePath()
返回错误的路径?我硬编码了上面的String
,我的图像显示得很好。你们其中任何人都知道我做错了什么吗?提前谢谢
答案 0 :(得分:2)
图像的实际路径是
您可能在那里有一个文件,但这不是您在代码中设置的File
。请尝试使用getExternalFilesDir(null)
代替getFilesDir()
。