0

Hi i am trying to add Geo-tag for captured images using below code but Geo-tag is showing when i restart the device i searched lot in google for solution but i did not find solution for this issue can some one help me please

my code:-

     private void addGeoTag(File file){

            ExifInterface exif;
            double latitude = 17.4436;
            double longitude = 78.4458;
            try {
                System.out.println("file is--->"+file.toString());
                exif = new ExifInterface(file.toString());
                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());
            }


}
AbhiRam
  • 2,033
  • 7
  • 41
  • 94

0 Answers0