我正在开发一些应用程序,在我提交它们和相关数据之前需要拍摄3张图像。 我有以下代码:使用getExternalStoragePublicDirectory保存的Android图像不会在内部存储器中显示
听众:
View.OnClickListener imgListeners = new View.OnClickListener() {
@Override
public void onClick(View v) {
String sSuffix = "_PIC";
String sElementName = poleId.getText().toString();
switch (v.getId()) {
case R.id.ImagePoleId:
sSuffix = "_ID";
break;
case R.id.ImagePole:
sSuffix = "_POLE";
break;
case R.id.ImagePoleBulbs:
sSuffix = "_BULBS";
break;
}
takeCameraPic(sElementName, sSuffix + ".jpg");
}
};
设置监听器:
idImgButton.setOnClickListener(imgListeners);
poleImgButton.setOnClickListener(imgListeners);
bulbsImgButton.setOnClickListener(imgListeners);
而且在听众中使用的功能:
private void takeCameraPic(String elementName ,String picNameSuffix) {
if (elementName.equals("")) return;
idImgFile = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), elementName + picNameSuffix);
Uri idImgUri = Uri.fromFile(idImgFile);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, idImgUri);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
startActivityForResult(intent, 0);
}
当我进入应用程序,一切正常,相机弹出,我可以采取形象,回去。 但是当我在整个内部存储器中查找图像时,它只是不在那里。我检查了DCIM \ PICTURES文件夹,没有任何东西。 这是使用的应用程序保存的唯一的图片在PIC的信息,它被保存在以下文件夹说:
/存储/模拟/ 0 /图片
检查'http:// stackoverflow.com/questions/25234897/images-not-being-saved-picture-is-by-camera-app-that-isnt-the-stock' – Jas