Krish
Krish

Reputation: 4232

Geo-tag is showing for captured images after restart the device

I am trying to add geo tag to an Image after I captured it from camera by using the following code, but the location is tagging to the image after restarting the device.

What did I do wrong?

Can some on help me please.

My code:-

private void onCaptureImageResult(Intent data) {

    try {
        File selectedFile = new File(Utilities.getRealPathFromURI(imageUri,getActivity()));
        geoTag(selectedFile.getAbsolutePath(), latitude,longitude);

    } catch (Throwable throwable) {
        throwable.printStackTrace();
    }
}


 public void geoTag(String filename, double latitude, double longitude){

        ExifInterface exif;
        try {
            exif = new ExifInterface(filename);
            int num1Lat = (int)Math.floor(latitude);
            int num2Lat = (int)Math.floor((latitude - num1Lat) * 60);
            double num3Lat = (latitude - ((double)num1Lat+((double)num2Lat/60))) * 3600000;

            int num1Lon = (int)Math.floor(longitude);
            int num2Lon = (int)Math.floor((longitude - num1Lon) * 60);
            double num3Lon = (longitude - ((double)num1Lon+((double)num2Lon/60))) * 3600000;

            exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE, num1Lat+"/1,"+num2Lat+"/1,"+num3Lat+"/1000");
            exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE, num1Lon+"/1,"+num2Lon+"/1,"+num3Lon+"/1000");


            if (latitude > 0) {
                exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE_REF, "N");
            } else {
                exif.setAttribute(ExifInterface.TAG_GPS_LATITUDE_REF, "S");
            }

            if (longitude > 0) {
                exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE_REF, "E");
            } else {
                exif.setAttribute(ExifInterface.TAG_GPS_LONGITUDE_REF, "W");
            }

            exif.saveAttributes();
        } catch (IOException e) {
            Log.e("PictureActivity", e.getLocalizedMessage());
        }
    }

Upvotes: 2

Views: 36

Answers (0)

Related Questions