Loading api/current.xml +35 −0 Original line number Diff line number Diff line Loading @@ -87263,6 +87263,19 @@ <exception name="IOException" type="java.io.IOException"> </exception> </constructor> <method name="getAltitude" return="double" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="defaultValue" type="double"> </parameter> </method> <method name="getAttribute" return="java.lang.String" abstract="false" Loading Loading @@ -87501,6 +87514,28 @@ visibility="public" > </field> <field name="TAG_GPS_ALTITUDE" type="java.lang.String" transient="false" volatile="false" value=""GPSAltitude"" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="TAG_GPS_ALTITUDE_REF" type="java.lang.String" transient="false" volatile="false" value=""GPSAltitudeRef"" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="TAG_GPS_DATESTAMP" type="java.lang.String" transient="false" media/java/android/media/ExifInterface.java +35 −5 Original line number Diff line number Diff line Loading @@ -51,6 +51,19 @@ public class ExifInterface { public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"; /** Type is String. */ public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"; /** * The altitude (in meters) based on the reference in TAG_GPS_ALTITUDE_REF. * Type is rational. */ public static final String TAG_GPS_ALTITUDE = "GPSAltitude"; /** * 0 if the altitude is above sea level. 1 if the altitude is below sea * level. Type is int. */ public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"; /** Type is String. */ public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp"; /** Type is String. */ Loading Loading @@ -288,6 +301,23 @@ public class ExifInterface { } } /** * Return the altitude in meters. If the exif tag does not exist, return * <var>defaultValue</var>. * * @param defaultValue the value to return if the tag is not available. */ public double getAltitude(double defaultValue) { double altitude = getAttributeDouble(TAG_GPS_ALTITUDE, -1); int ref = getAttributeInt(TAG_GPS_ALTITUDE_REF, -1); if (altitude >= 0 && ref >= 0) { return (double) (altitude * ((ref == 1) ? -1 : 1)); } else { return defaultValue; } } /** * Returns number of milliseconds since Jan. 1, 1970, midnight. * Returns -1 if the date time information if not available. Loading Loading @@ -345,14 +375,14 @@ public class ExifInterface { / Float.parseFloat(pair[1].trim()))); pair = parts[2].split("/"); float seconds = Float.parseFloat(pair[0].trim()) / Float.parseFloat(pair[1].trim()); double seconds = Double.parseDouble(pair[0].trim()) / Double.parseDouble(pair[1].trim()); float result = degrees + (minutes / 60F) + (seconds / (60F * 60F)); double result = degrees + (minutes / 60.0) + (seconds / 3600.0); if ((ref.equals("S") || ref.equals("W"))) { return -result; return (float) -result; } return result; return (float) result; } catch (RuntimeException ex) { // if for whatever reason we can't parse the lat long then return // null Loading Loading
api/current.xml +35 −0 Original line number Diff line number Diff line Loading @@ -87263,6 +87263,19 @@ <exception name="IOException" type="java.io.IOException"> </exception> </constructor> <method name="getAltitude" return="double" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" > <parameter name="defaultValue" type="double"> </parameter> </method> <method name="getAttribute" return="java.lang.String" abstract="false" Loading Loading @@ -87501,6 +87514,28 @@ visibility="public" > </field> <field name="TAG_GPS_ALTITUDE" type="java.lang.String" transient="false" volatile="false" value=""GPSAltitude"" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="TAG_GPS_ALTITUDE_REF" type="java.lang.String" transient="false" volatile="false" value=""GPSAltitudeRef"" static="true" final="true" deprecated="not deprecated" visibility="public" > </field> <field name="TAG_GPS_DATESTAMP" type="java.lang.String" transient="false"
media/java/android/media/ExifInterface.java +35 −5 Original line number Diff line number Diff line Loading @@ -51,6 +51,19 @@ public class ExifInterface { public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef"; /** Type is String. */ public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef"; /** * The altitude (in meters) based on the reference in TAG_GPS_ALTITUDE_REF. * Type is rational. */ public static final String TAG_GPS_ALTITUDE = "GPSAltitude"; /** * 0 if the altitude is above sea level. 1 if the altitude is below sea * level. Type is int. */ public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef"; /** Type is String. */ public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp"; /** Type is String. */ Loading Loading @@ -288,6 +301,23 @@ public class ExifInterface { } } /** * Return the altitude in meters. If the exif tag does not exist, return * <var>defaultValue</var>. * * @param defaultValue the value to return if the tag is not available. */ public double getAltitude(double defaultValue) { double altitude = getAttributeDouble(TAG_GPS_ALTITUDE, -1); int ref = getAttributeInt(TAG_GPS_ALTITUDE_REF, -1); if (altitude >= 0 && ref >= 0) { return (double) (altitude * ((ref == 1) ? -1 : 1)); } else { return defaultValue; } } /** * Returns number of milliseconds since Jan. 1, 1970, midnight. * Returns -1 if the date time information if not available. Loading Loading @@ -345,14 +375,14 @@ public class ExifInterface { / Float.parseFloat(pair[1].trim()))); pair = parts[2].split("/"); float seconds = Float.parseFloat(pair[0].trim()) / Float.parseFloat(pair[1].trim()); double seconds = Double.parseDouble(pair[0].trim()) / Double.parseDouble(pair[1].trim()); float result = degrees + (minutes / 60F) + (seconds / (60F * 60F)); double result = degrees + (minutes / 60.0) + (seconds / 3600.0); if ((ref.equals("S") || ref.equals("W"))) { return -result; return (float) -result; } return result; return (float) result; } catch (RuntimeException ex) { // if for whatever reason we can't parse the lat long then return // null Loading