【问题标题】:GEO Exif informations of image taken from camera are null从相机拍摄的图像的 GEO Exif 信息为空
【发布时间】:2018-02-08 20:04:50
【问题描述】:

我无法从相机拍摄的照片中获取 GEO Exif 信息。
这是代码,“oldExif”变量确实具有几乎所有值 NULL(也是 GEO 信息)。

“uri”变量是拍摄和创建的图像的 uri。

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    if (resultCode != AppCompatActivity.RESULT_OK) {
        return;
    }
    if (requestCode == REQUEST_IMAGE_CAPTURE) {
        try {
            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT) {

                InputStream in = getContentResolver().openInputStream(uri);
                ExifInterface oldExif = new ExifInterface(in);
                // oldExif does have almost all values NULL
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

我的安卓版本是5.0,已经开启了本地化摄像头设置。
事实上,如果我从应用中获取图片并显示信息,我会看到地理数据。

【问题讨论】:

  • 如果您使用ACTION_IMAGE_CAPTURE,则无需在数百个可能的相机应用程序中的任何一个在图像中放置任何EXIF标签。
  • 我没有写代码,但我必须更新。我必须使用哪个 ACTION 来获取 EXIF 标签?

标签: android camera android-5.0-lollipop exif


【解决方案1】:

没有Intent 操作:

  • 导致第三方相机应用为用户提供拍照,并且

  • 强制相机应用添加任何特定的 EXIF 标签

您的选择是:

  • 没有 EXIF 标签的生活

  • 如果缺少这些标签,请自行添加(例如,找到用户的位置并将地理标签放入图像中)

【讨论】:

  • 我可以为您提供第二个建议,但我不明白问题是否取决于设备(硬件)或其他原因。
  • @GiacomoMasseroniChiaro:这取决于相机应用和用户在该相机应用中的设置。
猜你喜欢
  • 2016-10-25
  • 2014-01-18
  • 2011-07-15
  • 1970-01-01
  • 2018-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-10
相关资源
最近更新 更多