Add API to check if specified mime type is supported
Bug: 138845596
Test: N/A
Change-Id: I79566bc78e5b5a67d4bef936cc751ed3a74fec10
diff --git a/buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt b/buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
index 14ba1b6..885a197 100644
--- a/buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
+++ b/buildSrc/src/main/kotlin/androidx/build/LibraryVersions.kt
@@ -57,7 +57,7 @@
val DYNAMICANIMATION_KTX = Version("1.0.0-alpha03")
val EMOJI = Version("1.1.0-alpha01")
val ENTERPRISE = Version("1.0.0-rc01")
- val EXIFINTERFACE = Version("1.1.0-beta02")
+ val EXIFINTERFACE = Version("1.2.0-alpha01")
val FRAGMENT = Version("1.2.0-beta01")
val FUTURES = Version("1.0.0-rc01")
val GRIDLAYOUT = Version("1.1.0-alpha01")
diff --git a/exifinterface/api/1.2.0-alpha01.txt b/exifinterface/api/1.2.0-alpha01.txt
new file mode 100644
index 0000000..61b3f97
--- /dev/null
+++ b/exifinterface/api/1.2.0-alpha01.txt
@@ -0,0 +1,341 @@
+// Signature format: 3.0
+package androidx.exifinterface.media {
+
+ public class ExifInterface {
+ ctor public ExifInterface(java.io.File) throws java.io.IOException;
+ ctor public ExifInterface(String) throws java.io.IOException;
+ ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
+ method public void flipHorizontally();
+ method public void flipVertically();
+ method public double getAltitude(double);
+ method public String? getAttribute(String);
+ method public byte[]? getAttributeBytes(String);
+ method public double getAttributeDouble(String, double);
+ method public int getAttributeInt(String, int);
+ method public long[]? getAttributeRange(String);
+ method @Deprecated public boolean getLatLong(float[]!);
+ method public double[]? getLatLong();
+ method public int getRotationDegrees();
+ method public byte[]? getThumbnail();
+ method public android.graphics.Bitmap? getThumbnailBitmap();
+ method public byte[]? getThumbnailBytes();
+ method public long[]? getThumbnailRange();
+ method public boolean hasAttribute(String);
+ method public boolean hasThumbnail();
+ method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
+ method public boolean isThumbnailCompressed();
+ method public void resetOrientation();
+ method public void rotate(int);
+ method public void saveAttributes() throws java.io.IOException;
+ method public void setAltitude(double);
+ method public void setAttribute(String, String?);
+ method public void setGpsInfo(android.location.Location!);
+ method public void setLatLong(double, double);
+ field public static final short ALTITUDE_ABOVE_SEA_LEVEL = 0; // 0x0
+ field public static final short ALTITUDE_BELOW_SEA_LEVEL = 1; // 0x1
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_1;
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_2;
+ field public static final int[]! BITS_PER_SAMPLE_RGB;
+ field public static final int COLOR_SPACE_S_RGB = 1; // 0x1
+ field public static final int COLOR_SPACE_UNCALIBRATED = 65535; // 0xffff
+ field public static final short CONTRAST_HARD = 2; // 0x2
+ field public static final short CONTRAST_NORMAL = 0; // 0x0
+ field public static final short CONTRAST_SOFT = 1; // 0x1
+ field public static final int DATA_DEFLATE_ZIP = 8; // 0x8
+ field public static final int DATA_HUFFMAN_COMPRESSED = 2; // 0x2
+ field public static final int DATA_JPEG = 6; // 0x6
+ field public static final int DATA_JPEG_COMPRESSED = 7; // 0x7
+ field public static final int DATA_LOSSY_JPEG = 34892; // 0x884c
+ field public static final int DATA_PACK_BITS_COMPRESSED = 32773; // 0x8005
+ field public static final int DATA_UNCOMPRESSED = 1; // 0x1
+ field public static final short EXPOSURE_MODE_AUTO = 0; // 0x0
+ field public static final short EXPOSURE_MODE_AUTO_BRACKET = 2; // 0x2
+ field public static final short EXPOSURE_MODE_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_ACTION = 6; // 0x6
+ field public static final short EXPOSURE_PROGRAM_APERTURE_PRIORITY = 3; // 0x3
+ field public static final short EXPOSURE_PROGRAM_CREATIVE = 5; // 0x5
+ field public static final short EXPOSURE_PROGRAM_LANDSCAPE_MODE = 8; // 0x8
+ field public static final short EXPOSURE_PROGRAM_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_NORMAL = 2; // 0x2
+ field public static final short EXPOSURE_PROGRAM_NOT_DEFINED = 0; // 0x0
+ field public static final short EXPOSURE_PROGRAM_PORTRAIT_MODE = 7; // 0x7
+ field public static final short EXPOSURE_PROGRAM_SHUTTER_PRIORITY = 4; // 0x4
+ field public static final short FILE_SOURCE_DSC = 3; // 0x3
+ field public static final short FILE_SOURCE_OTHER = 0; // 0x0
+ field public static final short FILE_SOURCE_REFLEX_SCANNER = 2; // 0x2
+ field public static final short FILE_SOURCE_TRANSPARENT_SCANNER = 1; // 0x1
+ field public static final short FLAG_FLASH_FIRED = 1; // 0x1
+ field public static final short FLAG_FLASH_MODE_AUTO = 24; // 0x18
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_FIRING = 8; // 0x8
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_SUPPRESSION = 16; // 0x10
+ field public static final short FLAG_FLASH_NO_FLASH_FUNCTION = 32; // 0x20
+ field public static final short FLAG_FLASH_RED_EYE_SUPPORTED = 64; // 0x40
+ field public static final short FLAG_FLASH_RETURN_LIGHT_DETECTED = 6; // 0x6
+ field public static final short FLAG_FLASH_RETURN_LIGHT_NOT_DETECTED = 4; // 0x4
+ field public static final short FORMAT_CHUNKY = 1; // 0x1
+ field public static final short FORMAT_PLANAR = 2; // 0x2
+ field public static final short GAIN_CONTROL_HIGH_GAIN_DOWN = 4; // 0x4
+ field public static final short GAIN_CONTROL_HIGH_GAIN_UP = 2; // 0x2
+ field public static final short GAIN_CONTROL_LOW_GAIN_DOWN = 3; // 0x3
+ field public static final short GAIN_CONTROL_LOW_GAIN_UP = 1; // 0x1
+ field public static final short GAIN_CONTROL_NONE = 0; // 0x0
+ field public static final String GPS_DIRECTION_MAGNETIC = "M";
+ field public static final String GPS_DIRECTION_TRUE = "T";
+ field public static final String GPS_DISTANCE_KILOMETERS = "K";
+ field public static final String GPS_DISTANCE_MILES = "M";
+ field public static final String GPS_DISTANCE_NAUTICAL_MILES = "N";
+ field public static final String GPS_MEASUREMENT_2D = "2";
+ field public static final String GPS_MEASUREMENT_3D = "3";
+ field public static final short GPS_MEASUREMENT_DIFFERENTIAL_CORRECTED = 1; // 0x1
+ field public static final String GPS_MEASUREMENT_INTERRUPTED = "V";
+ field public static final String GPS_MEASUREMENT_IN_PROGRESS = "A";
+ field public static final short GPS_MEASUREMENT_NO_DIFFERENTIAL = 0; // 0x0
+ field public static final String GPS_SPEED_KILOMETERS_PER_HOUR = "K";
+ field public static final String GPS_SPEED_KNOTS = "N";
+ field public static final String GPS_SPEED_MILES_PER_HOUR = "M";
+ field public static final String LATITUDE_NORTH = "N";
+ field public static final String LATITUDE_SOUTH = "S";
+ field public static final short LIGHT_SOURCE_CLOUDY_WEATHER = 10; // 0xa
+ field public static final short LIGHT_SOURCE_COOL_WHITE_FLUORESCENT = 14; // 0xe
+ field public static final short LIGHT_SOURCE_D50 = 23; // 0x17
+ field public static final short LIGHT_SOURCE_D55 = 20; // 0x14
+ field public static final short LIGHT_SOURCE_D65 = 21; // 0x15
+ field public static final short LIGHT_SOURCE_D75 = 22; // 0x16
+ field public static final short LIGHT_SOURCE_DAYLIGHT = 1; // 0x1
+ field public static final short LIGHT_SOURCE_DAYLIGHT_FLUORESCENT = 12; // 0xc
+ field public static final short LIGHT_SOURCE_DAY_WHITE_FLUORESCENT = 13; // 0xd
+ field public static final short LIGHT_SOURCE_FINE_WEATHER = 9; // 0x9
+ field public static final short LIGHT_SOURCE_FLASH = 4; // 0x4
+ field public static final short LIGHT_SOURCE_FLUORESCENT = 2; // 0x2
+ field public static final short LIGHT_SOURCE_ISO_STUDIO_TUNGSTEN = 24; // 0x18
+ field public static final short LIGHT_SOURCE_OTHER = 255; // 0xff
+ field public static final short LIGHT_SOURCE_SHADE = 11; // 0xb
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_A = 17; // 0x11
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_B = 18; // 0x12
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_C = 19; // 0x13
+ field public static final short LIGHT_SOURCE_TUNGSTEN = 3; // 0x3
+ field public static final short LIGHT_SOURCE_UNKNOWN = 0; // 0x0
+ field public static final short LIGHT_SOURCE_WARM_WHITE_FLUORESCENT = 16; // 0x10
+ field public static final short LIGHT_SOURCE_WHITE_FLUORESCENT = 15; // 0xf
+ field public static final String LONGITUDE_EAST = "E";
+ field public static final String LONGITUDE_WEST = "W";
+ field public static final short METERING_MODE_AVERAGE = 1; // 0x1
+ field public static final short METERING_MODE_CENTER_WEIGHT_AVERAGE = 2; // 0x2
+ field public static final short METERING_MODE_MULTI_SPOT = 4; // 0x4
+ field public static final short METERING_MODE_OTHER = 255; // 0xff
+ field public static final short METERING_MODE_PARTIAL = 6; // 0x6
+ field public static final short METERING_MODE_PATTERN = 5; // 0x5
+ field public static final short METERING_MODE_SPOT = 3; // 0x3
+ field public static final short METERING_MODE_UNKNOWN = 0; // 0x0
+ field public static final int ORIENTATION_FLIP_HORIZONTAL = 2; // 0x2
+ field public static final int ORIENTATION_FLIP_VERTICAL = 4; // 0x4
+ field public static final int ORIENTATION_NORMAL = 1; // 0x1
+ field public static final int ORIENTATION_ROTATE_180 = 3; // 0x3
+ field public static final int ORIENTATION_ROTATE_270 = 8; // 0x8
+ field public static final int ORIENTATION_ROTATE_90 = 6; // 0x6
+ field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5
+ field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7
+ field public static final int ORIENTATION_UNDEFINED = 0; // 0x0
+ field public static final int ORIGINAL_RESOLUTION_IMAGE = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_BLACK_IS_ZERO = 1; // 0x1
+ field public static final int PHOTOMETRIC_INTERPRETATION_RGB = 2; // 0x2
+ field public static final int PHOTOMETRIC_INTERPRETATION_WHITE_IS_ZERO = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_YCBCR = 6; // 0x6
+ field public static final int REDUCED_RESOLUTION_IMAGE = 1; // 0x1
+ field public static final short RENDERED_PROCESS_CUSTOM = 1; // 0x1
+ field public static final short RENDERED_PROCESS_NORMAL = 0; // 0x0
+ field public static final short RESOLUTION_UNIT_CENTIMETERS = 3; // 0x3
+ field public static final short RESOLUTION_UNIT_INCHES = 2; // 0x2
+ field public static final short SATURATION_HIGH = 0; // 0x0
+ field public static final short SATURATION_LOW = 0; // 0x0
+ field public static final short SATURATION_NORMAL = 0; // 0x0
+ field public static final short SCENE_CAPTURE_TYPE_LANDSCAPE = 1; // 0x1
+ field public static final short SCENE_CAPTURE_TYPE_NIGHT = 3; // 0x3
+ field public static final short SCENE_CAPTURE_TYPE_PORTRAIT = 2; // 0x2
+ field public static final short SCENE_CAPTURE_TYPE_STANDARD = 0; // 0x0
+ field public static final short SCENE_TYPE_DIRECTLY_PHOTOGRAPHED = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_ISO_SPEED = 3; // 0x3
+ field public static final short SENSITIVITY_TYPE_REI = 2; // 0x2
+ field public static final short SENSITIVITY_TYPE_REI_AND_ISO = 6; // 0x6
+ field public static final short SENSITIVITY_TYPE_SOS = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_SOS_AND_ISO = 5; // 0x5
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI = 4; // 0x4
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI_AND_ISO = 7; // 0x7
+ field public static final short SENSITIVITY_TYPE_UNKNOWN = 0; // 0x0
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL = 5; // 0x5
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL_LINEAR = 8; // 0x8
+ field public static final short SENSOR_TYPE_NOT_DEFINED = 1; // 0x1
+ field public static final short SENSOR_TYPE_ONE_CHIP = 2; // 0x2
+ field public static final short SENSOR_TYPE_THREE_CHIP = 4; // 0x4
+ field public static final short SENSOR_TYPE_TRILINEAR = 7; // 0x7
+ field public static final short SENSOR_TYPE_TWO_CHIP = 3; // 0x3
+ field public static final short SHARPNESS_HARD = 2; // 0x2
+ field public static final short SHARPNESS_NORMAL = 0; // 0x0
+ field public static final short SHARPNESS_SOFT = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_CLOSE_VIEW = 2; // 0x2
+ field public static final short SUBJECT_DISTANCE_RANGE_DISTANT_VIEW = 3; // 0x3
+ field public static final short SUBJECT_DISTANCE_RANGE_MACRO = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_UNKNOWN = 0; // 0x0
+ field public static final String TAG_APERTURE_VALUE = "ApertureValue";
+ field public static final String TAG_ARTIST = "Artist";
+ field public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample";
+ field public static final String TAG_BODY_SERIAL_NUMBER = "BodySerialNumber";
+ field public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue";
+ field @Deprecated public static final String TAG_CAMARA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CAMERA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CFA_PATTERN = "CFAPattern";
+ field public static final String TAG_COLOR_SPACE = "ColorSpace";
+ field public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration";
+ field public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel";
+ field public static final String TAG_COMPRESSION = "Compression";
+ field public static final String TAG_CONTRAST = "Contrast";
+ field public static final String TAG_COPYRIGHT = "Copyright";
+ field public static final String TAG_CUSTOM_RENDERED = "CustomRendered";
+ field public static final String TAG_DATETIME = "DateTime";
+ field public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized";
+ field public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal";
+ field public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize";
+ field public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription";
+ field public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio";
+ field public static final String TAG_DNG_VERSION = "DNGVersion";
+ field public static final String TAG_EXIF_VERSION = "ExifVersion";
+ field public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue";
+ field public static final String TAG_EXPOSURE_INDEX = "ExposureIndex";
+ field public static final String TAG_EXPOSURE_MODE = "ExposureMode";
+ field public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram";
+ field public static final String TAG_EXPOSURE_TIME = "ExposureTime";
+ field public static final String TAG_FILE_SOURCE = "FileSource";
+ field public static final String TAG_FLASH = "Flash";
+ field public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion";
+ field public static final String TAG_FLASH_ENERGY = "FlashEnergy";
+ field public static final String TAG_FOCAL_LENGTH = "FocalLength";
+ field public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm";
+ field public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit";
+ field public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution";
+ field public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution";
+ field public static final String TAG_F_NUMBER = "FNumber";
+ field public static final String TAG_GAIN_CONTROL = "GainControl";
+ field public static final String TAG_GAMMA = "Gamma";
+ field public static final String TAG_GPS_ALTITUDE = "GPSAltitude";
+ field public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef";
+ field public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation";
+ field public static final String TAG_GPS_DATESTAMP = "GPSDateStamp";
+ field public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing";
+ field public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef";
+ field public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance";
+ field public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef";
+ field public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude";
+ field public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef";
+ field public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude";
+ field public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef";
+ field public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential";
+ field public static final String TAG_GPS_DOP = "GPSDOP";
+ field public static final String TAG_GPS_H_POSITIONING_ERROR = "GPSHPositioningError";
+ field public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection";
+ field public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef";
+ field public static final String TAG_GPS_LATITUDE = "GPSLatitude";
+ field public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef";
+ field public static final String TAG_GPS_LONGITUDE = "GPSLongitude";
+ field public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef";
+ field public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum";
+ field public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode";
+ field public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod";
+ field public static final String TAG_GPS_SATELLITES = "GPSSatellites";
+ field public static final String TAG_GPS_SPEED = "GPSSpeed";
+ field public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef";
+ field public static final String TAG_GPS_STATUS = "GPSStatus";
+ field public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp";
+ field public static final String TAG_GPS_TRACK = "GPSTrack";
+ field public static final String TAG_GPS_TRACK_REF = "GPSTrackRef";
+ field public static final String TAG_GPS_VERSION_ID = "GPSVersionID";
+ field public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription";
+ field public static final String TAG_IMAGE_LENGTH = "ImageLength";
+ field public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID";
+ field public static final String TAG_IMAGE_WIDTH = "ImageWidth";
+ field public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex";
+ field public static final String TAG_ISO_SPEED = "ISOSpeed";
+ field public static final String TAG_ISO_SPEED_LATITUDE_YYY = "ISOSpeedLatitudeyyy";
+ field public static final String TAG_ISO_SPEED_LATITUDE_ZZZ = "ISOSpeedLatitudezzz";
+ field @Deprecated public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength";
+ field public static final String TAG_LENS_MAKE = "LensMake";
+ field public static final String TAG_LENS_MODEL = "LensModel";
+ field public static final String TAG_LENS_SERIAL_NUMBER = "LensSerialNumber";
+ field public static final String TAG_LENS_SPECIFICATION = "LensSpecification";
+ field public static final String TAG_LIGHT_SOURCE = "LightSource";
+ field public static final String TAG_MAKE = "Make";
+ field public static final String TAG_MAKER_NOTE = "MakerNote";
+ field public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue";
+ field public static final String TAG_METERING_MODE = "MeteringMode";
+ field public static final String TAG_MODEL = "Model";
+ field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType";
+ field public static final String TAG_OECF = "OECF";
+ field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart";
+ field public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage";
+ field public static final String TAG_ORIENTATION = "Orientation";
+ field public static final String TAG_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity";
+ field public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation";
+ field public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension";
+ field public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension";
+ field public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration";
+ field public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities";
+ field public static final String TAG_RECOMMENDED_EXPOSURE_INDEX = "RecommendedExposureIndex";
+ field public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite";
+ field public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile";
+ field public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit";
+ field public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip";
+ field public static final String TAG_RW2_ISO = "ISO";
+ field public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw";
+ field public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder";
+ field public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder";
+ field public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder";
+ field public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder";
+ field public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel";
+ field public static final String TAG_SATURATION = "Saturation";
+ field public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType";
+ field public static final String TAG_SCENE_TYPE = "SceneType";
+ field public static final String TAG_SENSING_METHOD = "SensingMethod";
+ field public static final String TAG_SENSITIVITY_TYPE = "SensitivityType";
+ field public static final String TAG_SHARPNESS = "Sharpness";
+ field public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue";
+ field public static final String TAG_SOFTWARE = "Software";
+ field public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse";
+ field public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity";
+ field public static final String TAG_STANDARD_OUTPUT_SENSITIVITY = "StandardOutputSensitivity";
+ field public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts";
+ field public static final String TAG_STRIP_OFFSETS = "StripOffsets";
+ field public static final String TAG_SUBFILE_TYPE = "SubfileType";
+ field public static final String TAG_SUBJECT_AREA = "SubjectArea";
+ field public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance";
+ field public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
+ field public static final String TAG_SUBJECT_LOCATION = "SubjectLocation";
+ field public static final String TAG_SUBSEC_TIME = "SubSecTime";
+ field public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
+ field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
+ field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
+ field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
+ field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction";
+ field public static final String TAG_USER_COMMENT = "UserComment";
+ field public static final String TAG_WHITE_BALANCE = "WhiteBalance";
+ field public static final String TAG_WHITE_POINT = "WhitePoint";
+ field public static final String TAG_XMP = "Xmp";
+ field public static final String TAG_X_RESOLUTION = "XResolution";
+ field public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients";
+ field public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning";
+ field public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling";
+ field public static final String TAG_Y_RESOLUTION = "YResolution";
+ field @Deprecated public static final int WHITEBALANCE_AUTO = 0; // 0x0
+ field @Deprecated public static final int WHITEBALANCE_MANUAL = 1; // 0x1
+ field public static final short WHITE_BALANCE_AUTO = 0; // 0x0
+ field public static final short WHITE_BALANCE_MANUAL = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CENTERED = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
+ }
+
+}
+
diff --git a/exifinterface/api/current.txt b/exifinterface/api/current.txt
index 87a26c7..61b3f97 100644
--- a/exifinterface/api/current.txt
+++ b/exifinterface/api/current.txt
@@ -24,6 +24,7 @@
method public boolean hasAttribute(String);
method public boolean hasThumbnail();
method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
method public boolean isThumbnailCompressed();
method public void resetOrientation();
method public void rotate(int);
diff --git a/exifinterface/api/public_plus_experimental_1.2.0-alpha01.txt b/exifinterface/api/public_plus_experimental_1.2.0-alpha01.txt
new file mode 100644
index 0000000..61b3f97
--- /dev/null
+++ b/exifinterface/api/public_plus_experimental_1.2.0-alpha01.txt
@@ -0,0 +1,341 @@
+// Signature format: 3.0
+package androidx.exifinterface.media {
+
+ public class ExifInterface {
+ ctor public ExifInterface(java.io.File) throws java.io.IOException;
+ ctor public ExifInterface(String) throws java.io.IOException;
+ ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
+ method public void flipHorizontally();
+ method public void flipVertically();
+ method public double getAltitude(double);
+ method public String? getAttribute(String);
+ method public byte[]? getAttributeBytes(String);
+ method public double getAttributeDouble(String, double);
+ method public int getAttributeInt(String, int);
+ method public long[]? getAttributeRange(String);
+ method @Deprecated public boolean getLatLong(float[]!);
+ method public double[]? getLatLong();
+ method public int getRotationDegrees();
+ method public byte[]? getThumbnail();
+ method public android.graphics.Bitmap? getThumbnailBitmap();
+ method public byte[]? getThumbnailBytes();
+ method public long[]? getThumbnailRange();
+ method public boolean hasAttribute(String);
+ method public boolean hasThumbnail();
+ method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
+ method public boolean isThumbnailCompressed();
+ method public void resetOrientation();
+ method public void rotate(int);
+ method public void saveAttributes() throws java.io.IOException;
+ method public void setAltitude(double);
+ method public void setAttribute(String, String?);
+ method public void setGpsInfo(android.location.Location!);
+ method public void setLatLong(double, double);
+ field public static final short ALTITUDE_ABOVE_SEA_LEVEL = 0; // 0x0
+ field public static final short ALTITUDE_BELOW_SEA_LEVEL = 1; // 0x1
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_1;
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_2;
+ field public static final int[]! BITS_PER_SAMPLE_RGB;
+ field public static final int COLOR_SPACE_S_RGB = 1; // 0x1
+ field public static final int COLOR_SPACE_UNCALIBRATED = 65535; // 0xffff
+ field public static final short CONTRAST_HARD = 2; // 0x2
+ field public static final short CONTRAST_NORMAL = 0; // 0x0
+ field public static final short CONTRAST_SOFT = 1; // 0x1
+ field public static final int DATA_DEFLATE_ZIP = 8; // 0x8
+ field public static final int DATA_HUFFMAN_COMPRESSED = 2; // 0x2
+ field public static final int DATA_JPEG = 6; // 0x6
+ field public static final int DATA_JPEG_COMPRESSED = 7; // 0x7
+ field public static final int DATA_LOSSY_JPEG = 34892; // 0x884c
+ field public static final int DATA_PACK_BITS_COMPRESSED = 32773; // 0x8005
+ field public static final int DATA_UNCOMPRESSED = 1; // 0x1
+ field public static final short EXPOSURE_MODE_AUTO = 0; // 0x0
+ field public static final short EXPOSURE_MODE_AUTO_BRACKET = 2; // 0x2
+ field public static final short EXPOSURE_MODE_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_ACTION = 6; // 0x6
+ field public static final short EXPOSURE_PROGRAM_APERTURE_PRIORITY = 3; // 0x3
+ field public static final short EXPOSURE_PROGRAM_CREATIVE = 5; // 0x5
+ field public static final short EXPOSURE_PROGRAM_LANDSCAPE_MODE = 8; // 0x8
+ field public static final short EXPOSURE_PROGRAM_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_NORMAL = 2; // 0x2
+ field public static final short EXPOSURE_PROGRAM_NOT_DEFINED = 0; // 0x0
+ field public static final short EXPOSURE_PROGRAM_PORTRAIT_MODE = 7; // 0x7
+ field public static final short EXPOSURE_PROGRAM_SHUTTER_PRIORITY = 4; // 0x4
+ field public static final short FILE_SOURCE_DSC = 3; // 0x3
+ field public static final short FILE_SOURCE_OTHER = 0; // 0x0
+ field public static final short FILE_SOURCE_REFLEX_SCANNER = 2; // 0x2
+ field public static final short FILE_SOURCE_TRANSPARENT_SCANNER = 1; // 0x1
+ field public static final short FLAG_FLASH_FIRED = 1; // 0x1
+ field public static final short FLAG_FLASH_MODE_AUTO = 24; // 0x18
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_FIRING = 8; // 0x8
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_SUPPRESSION = 16; // 0x10
+ field public static final short FLAG_FLASH_NO_FLASH_FUNCTION = 32; // 0x20
+ field public static final short FLAG_FLASH_RED_EYE_SUPPORTED = 64; // 0x40
+ field public static final short FLAG_FLASH_RETURN_LIGHT_DETECTED = 6; // 0x6
+ field public static final short FLAG_FLASH_RETURN_LIGHT_NOT_DETECTED = 4; // 0x4
+ field public static final short FORMAT_CHUNKY = 1; // 0x1
+ field public static final short FORMAT_PLANAR = 2; // 0x2
+ field public static final short GAIN_CONTROL_HIGH_GAIN_DOWN = 4; // 0x4
+ field public static final short GAIN_CONTROL_HIGH_GAIN_UP = 2; // 0x2
+ field public static final short GAIN_CONTROL_LOW_GAIN_DOWN = 3; // 0x3
+ field public static final short GAIN_CONTROL_LOW_GAIN_UP = 1; // 0x1
+ field public static final short GAIN_CONTROL_NONE = 0; // 0x0
+ field public static final String GPS_DIRECTION_MAGNETIC = "M";
+ field public static final String GPS_DIRECTION_TRUE = "T";
+ field public static final String GPS_DISTANCE_KILOMETERS = "K";
+ field public static final String GPS_DISTANCE_MILES = "M";
+ field public static final String GPS_DISTANCE_NAUTICAL_MILES = "N";
+ field public static final String GPS_MEASUREMENT_2D = "2";
+ field public static final String GPS_MEASUREMENT_3D = "3";
+ field public static final short GPS_MEASUREMENT_DIFFERENTIAL_CORRECTED = 1; // 0x1
+ field public static final String GPS_MEASUREMENT_INTERRUPTED = "V";
+ field public static final String GPS_MEASUREMENT_IN_PROGRESS = "A";
+ field public static final short GPS_MEASUREMENT_NO_DIFFERENTIAL = 0; // 0x0
+ field public static final String GPS_SPEED_KILOMETERS_PER_HOUR = "K";
+ field public static final String GPS_SPEED_KNOTS = "N";
+ field public static final String GPS_SPEED_MILES_PER_HOUR = "M";
+ field public static final String LATITUDE_NORTH = "N";
+ field public static final String LATITUDE_SOUTH = "S";
+ field public static final short LIGHT_SOURCE_CLOUDY_WEATHER = 10; // 0xa
+ field public static final short LIGHT_SOURCE_COOL_WHITE_FLUORESCENT = 14; // 0xe
+ field public static final short LIGHT_SOURCE_D50 = 23; // 0x17
+ field public static final short LIGHT_SOURCE_D55 = 20; // 0x14
+ field public static final short LIGHT_SOURCE_D65 = 21; // 0x15
+ field public static final short LIGHT_SOURCE_D75 = 22; // 0x16
+ field public static final short LIGHT_SOURCE_DAYLIGHT = 1; // 0x1
+ field public static final short LIGHT_SOURCE_DAYLIGHT_FLUORESCENT = 12; // 0xc
+ field public static final short LIGHT_SOURCE_DAY_WHITE_FLUORESCENT = 13; // 0xd
+ field public static final short LIGHT_SOURCE_FINE_WEATHER = 9; // 0x9
+ field public static final short LIGHT_SOURCE_FLASH = 4; // 0x4
+ field public static final short LIGHT_SOURCE_FLUORESCENT = 2; // 0x2
+ field public static final short LIGHT_SOURCE_ISO_STUDIO_TUNGSTEN = 24; // 0x18
+ field public static final short LIGHT_SOURCE_OTHER = 255; // 0xff
+ field public static final short LIGHT_SOURCE_SHADE = 11; // 0xb
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_A = 17; // 0x11
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_B = 18; // 0x12
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_C = 19; // 0x13
+ field public static final short LIGHT_SOURCE_TUNGSTEN = 3; // 0x3
+ field public static final short LIGHT_SOURCE_UNKNOWN = 0; // 0x0
+ field public static final short LIGHT_SOURCE_WARM_WHITE_FLUORESCENT = 16; // 0x10
+ field public static final short LIGHT_SOURCE_WHITE_FLUORESCENT = 15; // 0xf
+ field public static final String LONGITUDE_EAST = "E";
+ field public static final String LONGITUDE_WEST = "W";
+ field public static final short METERING_MODE_AVERAGE = 1; // 0x1
+ field public static final short METERING_MODE_CENTER_WEIGHT_AVERAGE = 2; // 0x2
+ field public static final short METERING_MODE_MULTI_SPOT = 4; // 0x4
+ field public static final short METERING_MODE_OTHER = 255; // 0xff
+ field public static final short METERING_MODE_PARTIAL = 6; // 0x6
+ field public static final short METERING_MODE_PATTERN = 5; // 0x5
+ field public static final short METERING_MODE_SPOT = 3; // 0x3
+ field public static final short METERING_MODE_UNKNOWN = 0; // 0x0
+ field public static final int ORIENTATION_FLIP_HORIZONTAL = 2; // 0x2
+ field public static final int ORIENTATION_FLIP_VERTICAL = 4; // 0x4
+ field public static final int ORIENTATION_NORMAL = 1; // 0x1
+ field public static final int ORIENTATION_ROTATE_180 = 3; // 0x3
+ field public static final int ORIENTATION_ROTATE_270 = 8; // 0x8
+ field public static final int ORIENTATION_ROTATE_90 = 6; // 0x6
+ field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5
+ field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7
+ field public static final int ORIENTATION_UNDEFINED = 0; // 0x0
+ field public static final int ORIGINAL_RESOLUTION_IMAGE = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_BLACK_IS_ZERO = 1; // 0x1
+ field public static final int PHOTOMETRIC_INTERPRETATION_RGB = 2; // 0x2
+ field public static final int PHOTOMETRIC_INTERPRETATION_WHITE_IS_ZERO = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_YCBCR = 6; // 0x6
+ field public static final int REDUCED_RESOLUTION_IMAGE = 1; // 0x1
+ field public static final short RENDERED_PROCESS_CUSTOM = 1; // 0x1
+ field public static final short RENDERED_PROCESS_NORMAL = 0; // 0x0
+ field public static final short RESOLUTION_UNIT_CENTIMETERS = 3; // 0x3
+ field public static final short RESOLUTION_UNIT_INCHES = 2; // 0x2
+ field public static final short SATURATION_HIGH = 0; // 0x0
+ field public static final short SATURATION_LOW = 0; // 0x0
+ field public static final short SATURATION_NORMAL = 0; // 0x0
+ field public static final short SCENE_CAPTURE_TYPE_LANDSCAPE = 1; // 0x1
+ field public static final short SCENE_CAPTURE_TYPE_NIGHT = 3; // 0x3
+ field public static final short SCENE_CAPTURE_TYPE_PORTRAIT = 2; // 0x2
+ field public static final short SCENE_CAPTURE_TYPE_STANDARD = 0; // 0x0
+ field public static final short SCENE_TYPE_DIRECTLY_PHOTOGRAPHED = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_ISO_SPEED = 3; // 0x3
+ field public static final short SENSITIVITY_TYPE_REI = 2; // 0x2
+ field public static final short SENSITIVITY_TYPE_REI_AND_ISO = 6; // 0x6
+ field public static final short SENSITIVITY_TYPE_SOS = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_SOS_AND_ISO = 5; // 0x5
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI = 4; // 0x4
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI_AND_ISO = 7; // 0x7
+ field public static final short SENSITIVITY_TYPE_UNKNOWN = 0; // 0x0
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL = 5; // 0x5
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL_LINEAR = 8; // 0x8
+ field public static final short SENSOR_TYPE_NOT_DEFINED = 1; // 0x1
+ field public static final short SENSOR_TYPE_ONE_CHIP = 2; // 0x2
+ field public static final short SENSOR_TYPE_THREE_CHIP = 4; // 0x4
+ field public static final short SENSOR_TYPE_TRILINEAR = 7; // 0x7
+ field public static final short SENSOR_TYPE_TWO_CHIP = 3; // 0x3
+ field public static final short SHARPNESS_HARD = 2; // 0x2
+ field public static final short SHARPNESS_NORMAL = 0; // 0x0
+ field public static final short SHARPNESS_SOFT = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_CLOSE_VIEW = 2; // 0x2
+ field public static final short SUBJECT_DISTANCE_RANGE_DISTANT_VIEW = 3; // 0x3
+ field public static final short SUBJECT_DISTANCE_RANGE_MACRO = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_UNKNOWN = 0; // 0x0
+ field public static final String TAG_APERTURE_VALUE = "ApertureValue";
+ field public static final String TAG_ARTIST = "Artist";
+ field public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample";
+ field public static final String TAG_BODY_SERIAL_NUMBER = "BodySerialNumber";
+ field public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue";
+ field @Deprecated public static final String TAG_CAMARA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CAMERA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CFA_PATTERN = "CFAPattern";
+ field public static final String TAG_COLOR_SPACE = "ColorSpace";
+ field public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration";
+ field public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel";
+ field public static final String TAG_COMPRESSION = "Compression";
+ field public static final String TAG_CONTRAST = "Contrast";
+ field public static final String TAG_COPYRIGHT = "Copyright";
+ field public static final String TAG_CUSTOM_RENDERED = "CustomRendered";
+ field public static final String TAG_DATETIME = "DateTime";
+ field public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized";
+ field public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal";
+ field public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize";
+ field public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription";
+ field public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio";
+ field public static final String TAG_DNG_VERSION = "DNGVersion";
+ field public static final String TAG_EXIF_VERSION = "ExifVersion";
+ field public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue";
+ field public static final String TAG_EXPOSURE_INDEX = "ExposureIndex";
+ field public static final String TAG_EXPOSURE_MODE = "ExposureMode";
+ field public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram";
+ field public static final String TAG_EXPOSURE_TIME = "ExposureTime";
+ field public static final String TAG_FILE_SOURCE = "FileSource";
+ field public static final String TAG_FLASH = "Flash";
+ field public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion";
+ field public static final String TAG_FLASH_ENERGY = "FlashEnergy";
+ field public static final String TAG_FOCAL_LENGTH = "FocalLength";
+ field public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm";
+ field public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit";
+ field public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution";
+ field public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution";
+ field public static final String TAG_F_NUMBER = "FNumber";
+ field public static final String TAG_GAIN_CONTROL = "GainControl";
+ field public static final String TAG_GAMMA = "Gamma";
+ field public static final String TAG_GPS_ALTITUDE = "GPSAltitude";
+ field public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef";
+ field public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation";
+ field public static final String TAG_GPS_DATESTAMP = "GPSDateStamp";
+ field public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing";
+ field public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef";
+ field public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance";
+ field public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef";
+ field public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude";
+ field public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef";
+ field public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude";
+ field public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef";
+ field public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential";
+ field public static final String TAG_GPS_DOP = "GPSDOP";
+ field public static final String TAG_GPS_H_POSITIONING_ERROR = "GPSHPositioningError";
+ field public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection";
+ field public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef";
+ field public static final String TAG_GPS_LATITUDE = "GPSLatitude";
+ field public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef";
+ field public static final String TAG_GPS_LONGITUDE = "GPSLongitude";
+ field public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef";
+ field public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum";
+ field public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode";
+ field public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod";
+ field public static final String TAG_GPS_SATELLITES = "GPSSatellites";
+ field public static final String TAG_GPS_SPEED = "GPSSpeed";
+ field public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef";
+ field public static final String TAG_GPS_STATUS = "GPSStatus";
+ field public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp";
+ field public static final String TAG_GPS_TRACK = "GPSTrack";
+ field public static final String TAG_GPS_TRACK_REF = "GPSTrackRef";
+ field public static final String TAG_GPS_VERSION_ID = "GPSVersionID";
+ field public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription";
+ field public static final String TAG_IMAGE_LENGTH = "ImageLength";
+ field public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID";
+ field public static final String TAG_IMAGE_WIDTH = "ImageWidth";
+ field public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex";
+ field public static final String TAG_ISO_SPEED = "ISOSpeed";
+ field public static final String TAG_ISO_SPEED_LATITUDE_YYY = "ISOSpeedLatitudeyyy";
+ field public static final String TAG_ISO_SPEED_LATITUDE_ZZZ = "ISOSpeedLatitudezzz";
+ field @Deprecated public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength";
+ field public static final String TAG_LENS_MAKE = "LensMake";
+ field public static final String TAG_LENS_MODEL = "LensModel";
+ field public static final String TAG_LENS_SERIAL_NUMBER = "LensSerialNumber";
+ field public static final String TAG_LENS_SPECIFICATION = "LensSpecification";
+ field public static final String TAG_LIGHT_SOURCE = "LightSource";
+ field public static final String TAG_MAKE = "Make";
+ field public static final String TAG_MAKER_NOTE = "MakerNote";
+ field public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue";
+ field public static final String TAG_METERING_MODE = "MeteringMode";
+ field public static final String TAG_MODEL = "Model";
+ field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType";
+ field public static final String TAG_OECF = "OECF";
+ field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart";
+ field public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage";
+ field public static final String TAG_ORIENTATION = "Orientation";
+ field public static final String TAG_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity";
+ field public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation";
+ field public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension";
+ field public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension";
+ field public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration";
+ field public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities";
+ field public static final String TAG_RECOMMENDED_EXPOSURE_INDEX = "RecommendedExposureIndex";
+ field public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite";
+ field public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile";
+ field public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit";
+ field public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip";
+ field public static final String TAG_RW2_ISO = "ISO";
+ field public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw";
+ field public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder";
+ field public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder";
+ field public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder";
+ field public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder";
+ field public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel";
+ field public static final String TAG_SATURATION = "Saturation";
+ field public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType";
+ field public static final String TAG_SCENE_TYPE = "SceneType";
+ field public static final String TAG_SENSING_METHOD = "SensingMethod";
+ field public static final String TAG_SENSITIVITY_TYPE = "SensitivityType";
+ field public static final String TAG_SHARPNESS = "Sharpness";
+ field public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue";
+ field public static final String TAG_SOFTWARE = "Software";
+ field public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse";
+ field public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity";
+ field public static final String TAG_STANDARD_OUTPUT_SENSITIVITY = "StandardOutputSensitivity";
+ field public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts";
+ field public static final String TAG_STRIP_OFFSETS = "StripOffsets";
+ field public static final String TAG_SUBFILE_TYPE = "SubfileType";
+ field public static final String TAG_SUBJECT_AREA = "SubjectArea";
+ field public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance";
+ field public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
+ field public static final String TAG_SUBJECT_LOCATION = "SubjectLocation";
+ field public static final String TAG_SUBSEC_TIME = "SubSecTime";
+ field public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
+ field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
+ field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
+ field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
+ field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction";
+ field public static final String TAG_USER_COMMENT = "UserComment";
+ field public static final String TAG_WHITE_BALANCE = "WhiteBalance";
+ field public static final String TAG_WHITE_POINT = "WhitePoint";
+ field public static final String TAG_XMP = "Xmp";
+ field public static final String TAG_X_RESOLUTION = "XResolution";
+ field public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients";
+ field public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning";
+ field public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling";
+ field public static final String TAG_Y_RESOLUTION = "YResolution";
+ field @Deprecated public static final int WHITEBALANCE_AUTO = 0; // 0x0
+ field @Deprecated public static final int WHITEBALANCE_MANUAL = 1; // 0x1
+ field public static final short WHITE_BALANCE_AUTO = 0; // 0x0
+ field public static final short WHITE_BALANCE_MANUAL = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CENTERED = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
+ }
+
+}
+
diff --git a/exifinterface/api/public_plus_experimental_current.txt b/exifinterface/api/public_plus_experimental_current.txt
index 87a26c7..61b3f97 100644
--- a/exifinterface/api/public_plus_experimental_current.txt
+++ b/exifinterface/api/public_plus_experimental_current.txt
@@ -24,6 +24,7 @@
method public boolean hasAttribute(String);
method public boolean hasThumbnail();
method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
method public boolean isThumbnailCompressed();
method public void resetOrientation();
method public void rotate(int);
diff --git a/exifinterface/api/res-1.2.0-alpha01.txt b/exifinterface/api/res-1.2.0-alpha01.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/exifinterface/api/res-1.2.0-alpha01.txt
diff --git a/exifinterface/api/restricted_1.2.0-alpha01.txt b/exifinterface/api/restricted_1.2.0-alpha01.txt
new file mode 100644
index 0000000..8730126
--- /dev/null
+++ b/exifinterface/api/restricted_1.2.0-alpha01.txt
@@ -0,0 +1,342 @@
+// Signature format: 3.0
+package androidx.exifinterface.media {
+
+ public class ExifInterface {
+ ctor public ExifInterface(java.io.File) throws java.io.IOException;
+ ctor public ExifInterface(String) throws java.io.IOException;
+ ctor public ExifInterface(java.io.FileDescriptor) throws java.io.IOException;
+ ctor public ExifInterface(java.io.InputStream) throws java.io.IOException;
+ method public void flipHorizontally();
+ method public void flipVertically();
+ method public double getAltitude(double);
+ method public String? getAttribute(String);
+ method public byte[]? getAttributeBytes(String);
+ method public double getAttributeDouble(String, double);
+ method public int getAttributeInt(String, int);
+ method public long[]? getAttributeRange(String);
+ method @Deprecated public boolean getLatLong(float[]!);
+ method public double[]? getLatLong();
+ method public int getRotationDegrees();
+ method public byte[]? getThumbnail();
+ method public android.graphics.Bitmap? getThumbnailBitmap();
+ method public byte[]? getThumbnailBytes();
+ method public long[]? getThumbnailRange();
+ method public boolean hasAttribute(String);
+ method public boolean hasThumbnail();
+ method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
+ method public boolean isThumbnailCompressed();
+ method public void resetOrientation();
+ method public void rotate(int);
+ method public void saveAttributes() throws java.io.IOException;
+ method public void setAltitude(double);
+ method public void setAttribute(String, String?);
+ method public void setGpsInfo(android.location.Location!);
+ method public void setLatLong(double, double);
+ field public static final short ALTITUDE_ABOVE_SEA_LEVEL = 0; // 0x0
+ field public static final short ALTITUDE_BELOW_SEA_LEVEL = 1; // 0x1
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_1;
+ field public static final int[]! BITS_PER_SAMPLE_GREYSCALE_2;
+ field public static final int[]! BITS_PER_SAMPLE_RGB;
+ field public static final int COLOR_SPACE_S_RGB = 1; // 0x1
+ field public static final int COLOR_SPACE_UNCALIBRATED = 65535; // 0xffff
+ field public static final short CONTRAST_HARD = 2; // 0x2
+ field public static final short CONTRAST_NORMAL = 0; // 0x0
+ field public static final short CONTRAST_SOFT = 1; // 0x1
+ field public static final int DATA_DEFLATE_ZIP = 8; // 0x8
+ field public static final int DATA_HUFFMAN_COMPRESSED = 2; // 0x2
+ field public static final int DATA_JPEG = 6; // 0x6
+ field public static final int DATA_JPEG_COMPRESSED = 7; // 0x7
+ field public static final int DATA_LOSSY_JPEG = 34892; // 0x884c
+ field public static final int DATA_PACK_BITS_COMPRESSED = 32773; // 0x8005
+ field public static final int DATA_UNCOMPRESSED = 1; // 0x1
+ field public static final short EXPOSURE_MODE_AUTO = 0; // 0x0
+ field public static final short EXPOSURE_MODE_AUTO_BRACKET = 2; // 0x2
+ field public static final short EXPOSURE_MODE_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_ACTION = 6; // 0x6
+ field public static final short EXPOSURE_PROGRAM_APERTURE_PRIORITY = 3; // 0x3
+ field public static final short EXPOSURE_PROGRAM_CREATIVE = 5; // 0x5
+ field public static final short EXPOSURE_PROGRAM_LANDSCAPE_MODE = 8; // 0x8
+ field public static final short EXPOSURE_PROGRAM_MANUAL = 1; // 0x1
+ field public static final short EXPOSURE_PROGRAM_NORMAL = 2; // 0x2
+ field public static final short EXPOSURE_PROGRAM_NOT_DEFINED = 0; // 0x0
+ field public static final short EXPOSURE_PROGRAM_PORTRAIT_MODE = 7; // 0x7
+ field public static final short EXPOSURE_PROGRAM_SHUTTER_PRIORITY = 4; // 0x4
+ field public static final short FILE_SOURCE_DSC = 3; // 0x3
+ field public static final short FILE_SOURCE_OTHER = 0; // 0x0
+ field public static final short FILE_SOURCE_REFLEX_SCANNER = 2; // 0x2
+ field public static final short FILE_SOURCE_TRANSPARENT_SCANNER = 1; // 0x1
+ field public static final short FLAG_FLASH_FIRED = 1; // 0x1
+ field public static final short FLAG_FLASH_MODE_AUTO = 24; // 0x18
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_FIRING = 8; // 0x8
+ field public static final short FLAG_FLASH_MODE_COMPULSORY_SUPPRESSION = 16; // 0x10
+ field public static final short FLAG_FLASH_NO_FLASH_FUNCTION = 32; // 0x20
+ field public static final short FLAG_FLASH_RED_EYE_SUPPORTED = 64; // 0x40
+ field public static final short FLAG_FLASH_RETURN_LIGHT_DETECTED = 6; // 0x6
+ field public static final short FLAG_FLASH_RETURN_LIGHT_NOT_DETECTED = 4; // 0x4
+ field public static final short FORMAT_CHUNKY = 1; // 0x1
+ field public static final short FORMAT_PLANAR = 2; // 0x2
+ field public static final short GAIN_CONTROL_HIGH_GAIN_DOWN = 4; // 0x4
+ field public static final short GAIN_CONTROL_HIGH_GAIN_UP = 2; // 0x2
+ field public static final short GAIN_CONTROL_LOW_GAIN_DOWN = 3; // 0x3
+ field public static final short GAIN_CONTROL_LOW_GAIN_UP = 1; // 0x1
+ field public static final short GAIN_CONTROL_NONE = 0; // 0x0
+ field public static final String GPS_DIRECTION_MAGNETIC = "M";
+ field public static final String GPS_DIRECTION_TRUE = "T";
+ field public static final String GPS_DISTANCE_KILOMETERS = "K";
+ field public static final String GPS_DISTANCE_MILES = "M";
+ field public static final String GPS_DISTANCE_NAUTICAL_MILES = "N";
+ field public static final String GPS_MEASUREMENT_2D = "2";
+ field public static final String GPS_MEASUREMENT_3D = "3";
+ field public static final short GPS_MEASUREMENT_DIFFERENTIAL_CORRECTED = 1; // 0x1
+ field public static final String GPS_MEASUREMENT_INTERRUPTED = "V";
+ field public static final String GPS_MEASUREMENT_IN_PROGRESS = "A";
+ field public static final short GPS_MEASUREMENT_NO_DIFFERENTIAL = 0; // 0x0
+ field public static final String GPS_SPEED_KILOMETERS_PER_HOUR = "K";
+ field public static final String GPS_SPEED_KNOTS = "N";
+ field public static final String GPS_SPEED_MILES_PER_HOUR = "M";
+ field public static final String LATITUDE_NORTH = "N";
+ field public static final String LATITUDE_SOUTH = "S";
+ field public static final short LIGHT_SOURCE_CLOUDY_WEATHER = 10; // 0xa
+ field public static final short LIGHT_SOURCE_COOL_WHITE_FLUORESCENT = 14; // 0xe
+ field public static final short LIGHT_SOURCE_D50 = 23; // 0x17
+ field public static final short LIGHT_SOURCE_D55 = 20; // 0x14
+ field public static final short LIGHT_SOURCE_D65 = 21; // 0x15
+ field public static final short LIGHT_SOURCE_D75 = 22; // 0x16
+ field public static final short LIGHT_SOURCE_DAYLIGHT = 1; // 0x1
+ field public static final short LIGHT_SOURCE_DAYLIGHT_FLUORESCENT = 12; // 0xc
+ field public static final short LIGHT_SOURCE_DAY_WHITE_FLUORESCENT = 13; // 0xd
+ field public static final short LIGHT_SOURCE_FINE_WEATHER = 9; // 0x9
+ field public static final short LIGHT_SOURCE_FLASH = 4; // 0x4
+ field public static final short LIGHT_SOURCE_FLUORESCENT = 2; // 0x2
+ field public static final short LIGHT_SOURCE_ISO_STUDIO_TUNGSTEN = 24; // 0x18
+ field public static final short LIGHT_SOURCE_OTHER = 255; // 0xff
+ field public static final short LIGHT_SOURCE_SHADE = 11; // 0xb
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_A = 17; // 0x11
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_B = 18; // 0x12
+ field public static final short LIGHT_SOURCE_STANDARD_LIGHT_C = 19; // 0x13
+ field public static final short LIGHT_SOURCE_TUNGSTEN = 3; // 0x3
+ field public static final short LIGHT_SOURCE_UNKNOWN = 0; // 0x0
+ field public static final short LIGHT_SOURCE_WARM_WHITE_FLUORESCENT = 16; // 0x10
+ field public static final short LIGHT_SOURCE_WHITE_FLUORESCENT = 15; // 0xf
+ field public static final String LONGITUDE_EAST = "E";
+ field public static final String LONGITUDE_WEST = "W";
+ field public static final short METERING_MODE_AVERAGE = 1; // 0x1
+ field public static final short METERING_MODE_CENTER_WEIGHT_AVERAGE = 2; // 0x2
+ field public static final short METERING_MODE_MULTI_SPOT = 4; // 0x4
+ field public static final short METERING_MODE_OTHER = 255; // 0xff
+ field public static final short METERING_MODE_PARTIAL = 6; // 0x6
+ field public static final short METERING_MODE_PATTERN = 5; // 0x5
+ field public static final short METERING_MODE_SPOT = 3; // 0x3
+ field public static final short METERING_MODE_UNKNOWN = 0; // 0x0
+ field public static final int ORIENTATION_FLIP_HORIZONTAL = 2; // 0x2
+ field public static final int ORIENTATION_FLIP_VERTICAL = 4; // 0x4
+ field public static final int ORIENTATION_NORMAL = 1; // 0x1
+ field public static final int ORIENTATION_ROTATE_180 = 3; // 0x3
+ field public static final int ORIENTATION_ROTATE_270 = 8; // 0x8
+ field public static final int ORIENTATION_ROTATE_90 = 6; // 0x6
+ field public static final int ORIENTATION_TRANSPOSE = 5; // 0x5
+ field public static final int ORIENTATION_TRANSVERSE = 7; // 0x7
+ field public static final int ORIENTATION_UNDEFINED = 0; // 0x0
+ field public static final int ORIGINAL_RESOLUTION_IMAGE = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_BLACK_IS_ZERO = 1; // 0x1
+ field public static final int PHOTOMETRIC_INTERPRETATION_RGB = 2; // 0x2
+ field public static final int PHOTOMETRIC_INTERPRETATION_WHITE_IS_ZERO = 0; // 0x0
+ field public static final int PHOTOMETRIC_INTERPRETATION_YCBCR = 6; // 0x6
+ field public static final int REDUCED_RESOLUTION_IMAGE = 1; // 0x1
+ field public static final short RENDERED_PROCESS_CUSTOM = 1; // 0x1
+ field public static final short RENDERED_PROCESS_NORMAL = 0; // 0x0
+ field public static final short RESOLUTION_UNIT_CENTIMETERS = 3; // 0x3
+ field public static final short RESOLUTION_UNIT_INCHES = 2; // 0x2
+ field public static final short SATURATION_HIGH = 0; // 0x0
+ field public static final short SATURATION_LOW = 0; // 0x0
+ field public static final short SATURATION_NORMAL = 0; // 0x0
+ field public static final short SCENE_CAPTURE_TYPE_LANDSCAPE = 1; // 0x1
+ field public static final short SCENE_CAPTURE_TYPE_NIGHT = 3; // 0x3
+ field public static final short SCENE_CAPTURE_TYPE_PORTRAIT = 2; // 0x2
+ field public static final short SCENE_CAPTURE_TYPE_STANDARD = 0; // 0x0
+ field public static final short SCENE_TYPE_DIRECTLY_PHOTOGRAPHED = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_ISO_SPEED = 3; // 0x3
+ field public static final short SENSITIVITY_TYPE_REI = 2; // 0x2
+ field public static final short SENSITIVITY_TYPE_REI_AND_ISO = 6; // 0x6
+ field public static final short SENSITIVITY_TYPE_SOS = 1; // 0x1
+ field public static final short SENSITIVITY_TYPE_SOS_AND_ISO = 5; // 0x5
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI = 4; // 0x4
+ field public static final short SENSITIVITY_TYPE_SOS_AND_REI_AND_ISO = 7; // 0x7
+ field public static final short SENSITIVITY_TYPE_UNKNOWN = 0; // 0x0
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL = 5; // 0x5
+ field public static final short SENSOR_TYPE_COLOR_SEQUENTIAL_LINEAR = 8; // 0x8
+ field public static final short SENSOR_TYPE_NOT_DEFINED = 1; // 0x1
+ field public static final short SENSOR_TYPE_ONE_CHIP = 2; // 0x2
+ field public static final short SENSOR_TYPE_THREE_CHIP = 4; // 0x4
+ field public static final short SENSOR_TYPE_TRILINEAR = 7; // 0x7
+ field public static final short SENSOR_TYPE_TWO_CHIP = 3; // 0x3
+ field public static final short SHARPNESS_HARD = 2; // 0x2
+ field public static final short SHARPNESS_NORMAL = 0; // 0x0
+ field public static final short SHARPNESS_SOFT = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_CLOSE_VIEW = 2; // 0x2
+ field public static final short SUBJECT_DISTANCE_RANGE_DISTANT_VIEW = 3; // 0x3
+ field public static final short SUBJECT_DISTANCE_RANGE_MACRO = 1; // 0x1
+ field public static final short SUBJECT_DISTANCE_RANGE_UNKNOWN = 0; // 0x0
+ field public static final String TAG_APERTURE_VALUE = "ApertureValue";
+ field public static final String TAG_ARTIST = "Artist";
+ field public static final String TAG_BITS_PER_SAMPLE = "BitsPerSample";
+ field public static final String TAG_BODY_SERIAL_NUMBER = "BodySerialNumber";
+ field public static final String TAG_BRIGHTNESS_VALUE = "BrightnessValue";
+ field @Deprecated public static final String TAG_CAMARA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CAMERA_OWNER_NAME = "CameraOwnerName";
+ field public static final String TAG_CFA_PATTERN = "CFAPattern";
+ field public static final String TAG_COLOR_SPACE = "ColorSpace";
+ field public static final String TAG_COMPONENTS_CONFIGURATION = "ComponentsConfiguration";
+ field public static final String TAG_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel";
+ field public static final String TAG_COMPRESSION = "Compression";
+ field public static final String TAG_CONTRAST = "Contrast";
+ field public static final String TAG_COPYRIGHT = "Copyright";
+ field public static final String TAG_CUSTOM_RENDERED = "CustomRendered";
+ field public static final String TAG_DATETIME = "DateTime";
+ field public static final String TAG_DATETIME_DIGITIZED = "DateTimeDigitized";
+ field public static final String TAG_DATETIME_ORIGINAL = "DateTimeOriginal";
+ field public static final String TAG_DEFAULT_CROP_SIZE = "DefaultCropSize";
+ field public static final String TAG_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription";
+ field public static final String TAG_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio";
+ field public static final String TAG_DNG_VERSION = "DNGVersion";
+ field public static final String TAG_EXIF_VERSION = "ExifVersion";
+ field public static final String TAG_EXPOSURE_BIAS_VALUE = "ExposureBiasValue";
+ field public static final String TAG_EXPOSURE_INDEX = "ExposureIndex";
+ field public static final String TAG_EXPOSURE_MODE = "ExposureMode";
+ field public static final String TAG_EXPOSURE_PROGRAM = "ExposureProgram";
+ field public static final String TAG_EXPOSURE_TIME = "ExposureTime";
+ field public static final String TAG_FILE_SOURCE = "FileSource";
+ field public static final String TAG_FLASH = "Flash";
+ field public static final String TAG_FLASHPIX_VERSION = "FlashpixVersion";
+ field public static final String TAG_FLASH_ENERGY = "FlashEnergy";
+ field public static final String TAG_FOCAL_LENGTH = "FocalLength";
+ field public static final String TAG_FOCAL_LENGTH_IN_35MM_FILM = "FocalLengthIn35mmFilm";
+ field public static final String TAG_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit";
+ field public static final String TAG_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution";
+ field public static final String TAG_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution";
+ field public static final String TAG_F_NUMBER = "FNumber";
+ field public static final String TAG_GAIN_CONTROL = "GainControl";
+ field public static final String TAG_GAMMA = "Gamma";
+ field public static final String TAG_GPS_ALTITUDE = "GPSAltitude";
+ field public static final String TAG_GPS_ALTITUDE_REF = "GPSAltitudeRef";
+ field public static final String TAG_GPS_AREA_INFORMATION = "GPSAreaInformation";
+ field public static final String TAG_GPS_DATESTAMP = "GPSDateStamp";
+ field public static final String TAG_GPS_DEST_BEARING = "GPSDestBearing";
+ field public static final String TAG_GPS_DEST_BEARING_REF = "GPSDestBearingRef";
+ field public static final String TAG_GPS_DEST_DISTANCE = "GPSDestDistance";
+ field public static final String TAG_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef";
+ field public static final String TAG_GPS_DEST_LATITUDE = "GPSDestLatitude";
+ field public static final String TAG_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef";
+ field public static final String TAG_GPS_DEST_LONGITUDE = "GPSDestLongitude";
+ field public static final String TAG_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef";
+ field public static final String TAG_GPS_DIFFERENTIAL = "GPSDifferential";
+ field public static final String TAG_GPS_DOP = "GPSDOP";
+ field public static final String TAG_GPS_H_POSITIONING_ERROR = "GPSHPositioningError";
+ field public static final String TAG_GPS_IMG_DIRECTION = "GPSImgDirection";
+ field public static final String TAG_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef";
+ field public static final String TAG_GPS_LATITUDE = "GPSLatitude";
+ field public static final String TAG_GPS_LATITUDE_REF = "GPSLatitudeRef";
+ field public static final String TAG_GPS_LONGITUDE = "GPSLongitude";
+ field public static final String TAG_GPS_LONGITUDE_REF = "GPSLongitudeRef";
+ field public static final String TAG_GPS_MAP_DATUM = "GPSMapDatum";
+ field public static final String TAG_GPS_MEASURE_MODE = "GPSMeasureMode";
+ field public static final String TAG_GPS_PROCESSING_METHOD = "GPSProcessingMethod";
+ field public static final String TAG_GPS_SATELLITES = "GPSSatellites";
+ field public static final String TAG_GPS_SPEED = "GPSSpeed";
+ field public static final String TAG_GPS_SPEED_REF = "GPSSpeedRef";
+ field public static final String TAG_GPS_STATUS = "GPSStatus";
+ field public static final String TAG_GPS_TIMESTAMP = "GPSTimeStamp";
+ field public static final String TAG_GPS_TRACK = "GPSTrack";
+ field public static final String TAG_GPS_TRACK_REF = "GPSTrackRef";
+ field public static final String TAG_GPS_VERSION_ID = "GPSVersionID";
+ field public static final String TAG_IMAGE_DESCRIPTION = "ImageDescription";
+ field public static final String TAG_IMAGE_LENGTH = "ImageLength";
+ field public static final String TAG_IMAGE_UNIQUE_ID = "ImageUniqueID";
+ field public static final String TAG_IMAGE_WIDTH = "ImageWidth";
+ field public static final String TAG_INTEROPERABILITY_INDEX = "InteroperabilityIndex";
+ field public static final String TAG_ISO_SPEED = "ISOSpeed";
+ field public static final String TAG_ISO_SPEED_LATITUDE_YYY = "ISOSpeedLatitudeyyy";
+ field public static final String TAG_ISO_SPEED_LATITUDE_ZZZ = "ISOSpeedLatitudezzz";
+ field @Deprecated public static final String TAG_ISO_SPEED_RATINGS = "ISOSpeedRatings";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat";
+ field public static final String TAG_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength";
+ field public static final String TAG_LENS_MAKE = "LensMake";
+ field public static final String TAG_LENS_MODEL = "LensModel";
+ field public static final String TAG_LENS_SERIAL_NUMBER = "LensSerialNumber";
+ field public static final String TAG_LENS_SPECIFICATION = "LensSpecification";
+ field public static final String TAG_LIGHT_SOURCE = "LightSource";
+ field public static final String TAG_MAKE = "Make";
+ field public static final String TAG_MAKER_NOTE = "MakerNote";
+ field public static final String TAG_MAX_APERTURE_VALUE = "MaxApertureValue";
+ field public static final String TAG_METERING_MODE = "MeteringMode";
+ field public static final String TAG_MODEL = "Model";
+ field public static final String TAG_NEW_SUBFILE_TYPE = "NewSubfileType";
+ field public static final String TAG_OECF = "OECF";
+ field public static final String TAG_ORF_ASPECT_FRAME = "AspectFrame";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_LENGTH = "PreviewImageLength";
+ field public static final String TAG_ORF_PREVIEW_IMAGE_START = "PreviewImageStart";
+ field public static final String TAG_ORF_THUMBNAIL_IMAGE = "ThumbnailImage";
+ field public static final String TAG_ORIENTATION = "Orientation";
+ field public static final String TAG_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity";
+ field public static final String TAG_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation";
+ field public static final String TAG_PIXEL_X_DIMENSION = "PixelXDimension";
+ field public static final String TAG_PIXEL_Y_DIMENSION = "PixelYDimension";
+ field public static final String TAG_PLANAR_CONFIGURATION = "PlanarConfiguration";
+ field public static final String TAG_PRIMARY_CHROMATICITIES = "PrimaryChromaticities";
+ field public static final String TAG_RECOMMENDED_EXPOSURE_INDEX = "RecommendedExposureIndex";
+ field public static final String TAG_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite";
+ field public static final String TAG_RELATED_SOUND_FILE = "RelatedSoundFile";
+ field public static final String TAG_RESOLUTION_UNIT = "ResolutionUnit";
+ field public static final String TAG_ROWS_PER_STRIP = "RowsPerStrip";
+ field public static final String TAG_RW2_ISO = "ISO";
+ field public static final String TAG_RW2_JPG_FROM_RAW = "JpgFromRaw";
+ field public static final String TAG_RW2_SENSOR_BOTTOM_BORDER = "SensorBottomBorder";
+ field public static final String TAG_RW2_SENSOR_LEFT_BORDER = "SensorLeftBorder";
+ field public static final String TAG_RW2_SENSOR_RIGHT_BORDER = "SensorRightBorder";
+ field public static final String TAG_RW2_SENSOR_TOP_BORDER = "SensorTopBorder";
+ field public static final String TAG_SAMPLES_PER_PIXEL = "SamplesPerPixel";
+ field public static final String TAG_SATURATION = "Saturation";
+ field public static final String TAG_SCENE_CAPTURE_TYPE = "SceneCaptureType";
+ field public static final String TAG_SCENE_TYPE = "SceneType";
+ field public static final String TAG_SENSING_METHOD = "SensingMethod";
+ field public static final String TAG_SENSITIVITY_TYPE = "SensitivityType";
+ field public static final String TAG_SHARPNESS = "Sharpness";
+ field public static final String TAG_SHUTTER_SPEED_VALUE = "ShutterSpeedValue";
+ field public static final String TAG_SOFTWARE = "Software";
+ field public static final String TAG_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse";
+ field public static final String TAG_SPECTRAL_SENSITIVITY = "SpectralSensitivity";
+ field public static final String TAG_STANDARD_OUTPUT_SENSITIVITY = "StandardOutputSensitivity";
+ field public static final String TAG_STRIP_BYTE_COUNTS = "StripByteCounts";
+ field public static final String TAG_STRIP_OFFSETS = "StripOffsets";
+ field public static final String TAG_SUBFILE_TYPE = "SubfileType";
+ field public static final String TAG_SUBJECT_AREA = "SubjectArea";
+ field public static final String TAG_SUBJECT_DISTANCE = "SubjectDistance";
+ field public static final String TAG_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange";
+ field public static final String TAG_SUBJECT_LOCATION = "SubjectLocation";
+ field public static final String TAG_SUBSEC_TIME = "SubSecTime";
+ field public static final String TAG_SUBSEC_TIME_DIGITIZED = "SubSecTimeDigitized";
+ field public static final String TAG_SUBSEC_TIME_ORIGINAL = "SubSecTimeOriginal";
+ field public static final String TAG_THUMBNAIL_IMAGE_LENGTH = "ThumbnailImageLength";
+ field public static final String TAG_THUMBNAIL_IMAGE_WIDTH = "ThumbnailImageWidth";
+ field public static final String TAG_TRANSFER_FUNCTION = "TransferFunction";
+ field public static final String TAG_USER_COMMENT = "UserComment";
+ field public static final String TAG_WHITE_BALANCE = "WhiteBalance";
+ field public static final String TAG_WHITE_POINT = "WhitePoint";
+ field public static final String TAG_XMP = "Xmp";
+ field public static final String TAG_X_RESOLUTION = "XResolution";
+ field public static final String TAG_Y_CB_CR_COEFFICIENTS = "YCbCrCoefficients";
+ field public static final String TAG_Y_CB_CR_POSITIONING = "YCbCrPositioning";
+ field public static final String TAG_Y_CB_CR_SUB_SAMPLING = "YCbCrSubSampling";
+ field public static final String TAG_Y_RESOLUTION = "YResolution";
+ field @Deprecated public static final int WHITEBALANCE_AUTO = 0; // 0x0
+ field @Deprecated public static final int WHITEBALANCE_MANUAL = 1; // 0x1
+ field public static final short WHITE_BALANCE_AUTO = 0; // 0x0
+ field public static final short WHITE_BALANCE_MANUAL = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CENTERED = 1; // 0x1
+ field public static final short Y_CB_CR_POSITIONING_CO_SITED = 2; // 0x2
+ }
+
+
+}
+
diff --git a/exifinterface/api/restricted_current.txt b/exifinterface/api/restricted_current.txt
index ce8a598..8730126 100644
--- a/exifinterface/api/restricted_current.txt
+++ b/exifinterface/api/restricted_current.txt
@@ -24,6 +24,7 @@
method public boolean hasAttribute(String);
method public boolean hasThumbnail();
method public boolean isFlipped();
+ method public static boolean isSupportedMimeType(String);
method public boolean isThumbnailCompressed();
method public void resetOrientation();
method public void rotate(int);
diff --git a/exifinterface/src/main/java/androidx/exifinterface/media/ExifInterface.java b/exifinterface/src/main/java/androidx/exifinterface/media/ExifInterface.java
index 188aaa4..5f714d5 100644
--- a/exifinterface/src/main/java/androidx/exifinterface/media/ExifInterface.java
+++ b/exifinterface/src/main/java/androidx/exifinterface/media/ExifInterface.java
@@ -61,6 +61,7 @@
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Set;
import java.util.TimeZone;
@@ -3863,6 +3864,37 @@
}
/**
+ * Returns whether ExifInterface currently supports parsing data from the specified mime type
+ * or not.
+ *
+ * @param mimeType the string value of mime type
+ */
+ public static boolean isSupportedMimeType(@NonNull String mimeType) {
+ if (mimeType == null) {
+ throw new NullPointerException("mimeType shouldn't be null");
+ }
+
+ switch (mimeType.toLowerCase(Locale.ROOT)) {
+ case "image/jpeg":
+ case "image/x-adobe-dng":
+ case "image/x-canon-cr2":
+ case "image/x-nikon-nef":
+ case "image/x-nikon-nrw":
+ case "image/x-sony-arw":
+ case "image/x-panasonic-rw2":
+ case "image/x-olympus-orf":
+ case "image/x-pentax-pef":
+ case "image/x-samsung-srw":
+ case "image/x-fuji-raf":
+ case "image/heic":
+ case "image/heif":
+ return true;
+ default:
+ return false;
+ }
+ }
+
+ /**
* Returns the EXIF attribute of the specified tag or {@code null} if there is no such tag in
* the image file.
*