Java 如何在Android Studio的文件管理器中获取我保存的照片
我的应用程序有一些问题,我有打开相机和保存拍摄照片的代码,但是,当我使用文件管理器时,我找不到它们。有人能帮我吗 这是我的拍照代码:Java 如何在Android Studio的文件管理器中获取我保存的照片,java,android,android-studio,Java,Android,Android Studio,我的应用程序有一些问题,我有打开相机和保存拍摄照片的代码,但是,当我使用文件管理器时,我找不到它们。有人能帮我吗 这是我的拍照代码: cameraBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { mPhotoUri = FileProvider.getUriForFile(MainActivity.th
cameraBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mPhotoUri = FileProvider.getUriForFile(MainActivity.this, BuildConfig.APPLICATION_ID + ".provider", createImageFile());
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.setClipData(ClipData.newRawUri("A photo", mPhotoUri));
intent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
intent.putExtra(MediaStore.EXTRA_OUTPUT, mPhotoUri);
startActivityForResult(intent, ACTIVITY_REQUEST_CODE);
}
});
private File createImageFile() {
// Create an image file name
String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
String imageFileName = "JPEG_" + timeStamp + "_";
File storageDir = new File(getFilesDir(), "images/");
if (!storageDir.exists()) storageDir.mkdirs();
File image = null;
try {
image = File.createTempFile(
imageFileName, /* prefix */
".jpg", /* suffix */
storageDir /* directory */
);
} catch (IOException e) {
e.printStackTrace();
}
// Save a file: path for use with ACTION_VIEW intents
mCurrentPhotoPath = "file:" + image.getAbsolutePath();
return image;
}
工作人员将照片保存在:/data/data/com.example.miarkait/files/images
这是打开文件管理器的代码:
imageBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Intent.ACTION_GET_CONTENT, android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI);
final int ACTIVITY_SELECT_IMAGE = 1234;
startActivityForResult(i, ACTIVITY_SELECT_IMAGE);
}
});
但在这个管理器中,我只能看到“原始”相机拍摄的照片:
文件(getFilesDir()
GetFileDir()是应用程序的专用存储位置
没有其他应用程序可以访问
甚至连文件管理器都没有
你不能用ACTION\u GET\u CONTENT来选择它。那么,我如何将我的照片存储在其他应用程序可以看到它们的地方呢?将它们放在你自己的公用目录DCIM或图片文件夹中。