gpt4 book ai didi

android - 从 android 相机拍照并将其发送到网络服务器

转载 作者:行者123 更新时间:2023-11-29 22:23:35 25 4
gpt4 key购买 nike

我构建了一些调用相机 Activity 的应用程序..

我只是从我的应用程序中拍照并将其发送到网络服务器..

但是我无法获取我的图片路径..

我在尝试获取图像路径时总是遇到 NullException 错误..

这是我调用相机 Activity 时的代码:

Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
this.startActivityForResult(camera, PICTURE_RESULT);

这是 Activity 结果的代码:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PICTURE_RESULT){
if (resultCode == Activity.RESULT_OK) {
takePicture(data);
} else if (resultCode == Activity.RESULT_CANCELED) {

}
}
}

protected void takePicture(Intent data) {
Bundle b = data.getExtras();
pic = (Bitmap) b.get("data");
if (pic != null) {
imagePicture.setImageBitmap(pic);
}
}

我的代码有问题吗?

谢谢

最佳答案

好的,我明白你的问题了。您没有设置开始的路径。请查看此文档。

http://developer.android.com/reference/android/provider/MediaStore.html#ACTION_IMAGE_CAPTURE

所以你看,当你调用 ACTION_IMAGE_CAPTURE 时,你并没有向它传递额外的 EXTRA_OUTPUT 告诉应用程序图片将存储在哪里。这个 EXTRA_OUTPUT 是文件的路径。

所以就在你打算这样做的地方:

Intent camera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
URI pictureUri = Uri.fromFile(new File(<path to your file>));
camera.putExtra(MediaStore.EXTRA_OUTPUT, pictureUri);

关于android - 从 android 相机拍照并将其发送到网络服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6546431/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com