RedCorners.ExifLibrary.ImageFile 和 ExifInterface GPS 数据始终为零

问题描述

在 Android 9 上,RedCorners 和 ExifInterface 为所有图库图像和视频返回正确的 GPS 值。现在在 Android 11 设备上尝试我的应用程序,对于捕获的第一个视频,两个库都返回良好的 GPS 值,但随后我在新设备上更新了 Android 版本。对于所有视频和图像,从那一刻起,两个库总是返回 0 表示纬度、经度和高度。但是这些文件确实具有真正的 GPS 值:事实上,Google 相册在地理地图中正确显示了它们!如果我通过电子邮件分享 Google 相册中的图像并分析该文件,则它具有真正的 GPS 值。如果我通过电子邮件分享 Android gallery 中的图像并分析该文件,它会将所有 GPS 值设置为零!我推断 Google 会访问隐藏在 gallery 和其他应用程序中的敏感 GPS 数据。 我已阅读ExifInterface GPS not read on Android Q/10

  • 我还不能评论 - 并尝试了建议的解决方案:我已将 ACCESS_MEDIA_LOCATION 放在清单中(是否需要额外的权限对话框?)并使用以下代码片段访问该文件

    Android.Net.Uri photoUri = Android.Net.Uri.Parse("file://" + filename); photoUri = MediaStore.SetRequireOriginal(photoUri); var context = Android.App.Application.Context; 使用 (var stream = context.ContentResolver.OpenInputStream(photoUri)) { 如果(流!= null) { ExifInterface exif = new ExifInterface(stream); ret = exif.GetLatLong(floats); 双 d = exif.GetAltitude(0.0); 流.关闭(); } }

但所有返回值都为零。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)