0
我想从使用android.media.ExifInterface库的地理标记图像检索经度和纬度值。但是,尽管图像是地理标记的,getLatLong总是返回false。这是我的代码:getLatLong总是返回false
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button galleryButton = (Button) findViewById(R.id.galleryButton);
galleryButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent pickPhoto = new Intent(Intent.ACTION_PICK,
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(pickPhoto , 1);
}
});
}
protected void onActivityResult(int requestCode, int resultCode, Intent imageReturnedIntent) {
super.onActivityResult(requestCode, resultCode, imageReturnedIntent);
switch(requestCode) {
case 0:
if(resultCode == RESULT_OK){
Uri selectedImage = imageReturnedIntent.getData();
ExifInterface exif = new ExInterface(selectedImage.getPath());
float[] latlong = null;
bool result = exif.getLatLong(latlong);
}
break;
}
}
正如你所看到的,我初始化EXIF对象从返回的URI路径,它包含像“/外部/图像/媒体/ 2330”的路径。当我调用getLatLong时,它总是返回false。我也尝试了this page的示例,但仍然无效。任何帮助,将不胜感激。
银河S6边缘 的Android SDK版本25
谢谢!它完美的工作! – user30646