我正在尝试从在线 Google 照片库中拍摄的照片中读取我的应用程序中的 GPS 坐标。我使用以下代码启动 Intent:
Intent intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, SELECT_FILE);
我选择了一张肯定不会出现在设备内部存储器中的图片。
然后在 onActivityResult 我使用:
Uri selectedImage = data.getData();
final InputStream imageStream = getContentResolver().openInputStream(selectedImage);
File outputFile = getOutputMediaFile();
copyFiles(imageStream, outputFile);
imageStream.close();
将源图片的全部内容复制到目标图片,而不经过位图压缩。
然后我有一个函数,使用 ExifInterface getLatLong 函数读取 GPS 坐标,但它返回 0,0 ad 纬度和经度
对于已存储在设备内存中的图片,一切正常,但如果我尝试选择 Google 照片云上的图片,图片已正确下载,我可以保存它,但没有任何有用的 Exif 信息。
如果我打开我的谷歌照片应用程序并检查同一张照片的信息,GPS 数据就在那里。
有没有其他方法可以用完整的 Exif 数据检索该图片?