Java 从库中拾取图像时FileNotFoundException
我正在构建一个安卓应用程序,它有一个按钮,当用户点击它时,他必须从图库或相机中选择一幅图像,该图像将被发送到我的服务器。 但是,当我尝试在emulator中测试它时,当我提交时,我遇到了以下错误:Java 从库中拾取图像时FileNotFoundException,java,android,image,media,filenotfoundexception,Java,Android,Image,Media,Filenotfoundexception,我正在构建一个安卓应用程序,它有一个按钮,当用户点击它时,他必须从图库或相机中选择一幅图像,该图像将被发送到我的服务器。 但是,当我尝试在emulator中测试它时,当我提交时,我遇到了以下错误: 12-30 17:44:14.435: W/System.err(4216): java.io.FileNotFoundException: /content:/com.android.providers.media.documents/document/image%3A14: open failed
12-30 17:44:14.435: W/System.err(4216): java.io.FileNotFoundException:
/content:/com.android.providers.media.documents/document/image%3A14: open failed: ENOENT
(No such file or directory)
错误在于:
FileBody cbFile = new FileBody(this.image, "image/*");
而
this.image
是从库中拾取的图像 我在我的一个应用程序中做过类似的事情。试试这个,看看是否有效
这是打开图库拾取图像的代码
Intent intent = new Intent();
intent.setType("image/jpg");
intent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(
Intent.createChooser(intent, "Select Picture"),
SELECT_PICTURE);
确保以下方法在您的类中,因为它是在gallery活动完成后调用的
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
selectedImageUri = data.getData();
try {
Bitmap selectedImage = MediaStore.Images.Media.getBitmap(
this.getContentResolver(), selectedImageUri);
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
现在,您可以使用所选的位图执行任何操作图像您在设备中而不是模拟器中尝试过吗?是的,我的图像没有发送,但我看不到日志,因为我的Android设备未被Eclipse识别:(什么设备是您的?Wiko Iggy..不太受欢迎