diff --git a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java index 25b2868cee5..7356b048c19 100644 --- a/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java +++ b/ReactAndroid/src/main/java/com/facebook/react/modules/camera/CameraRollManager.java @@ -50,7 +50,6 @@ import java.nio.channels.ReadableByteChannel; import java.util.ArrayList; import java.util.List; import javax.annotation.Nullable; -import java.net.URLConnection; import java.net.URL; // TODO #6015104: rename to something less iOSish @@ -388,7 +387,8 @@ public class CameraRollManager extends ReactContextBaseJavaModule { WritableMap edge = new WritableNativeMap(); WritableMap node = new WritableNativeMap(); boolean imageInfoSuccess = - putImageInfo(resolver, media, node, idIndex, widthIndex, heightIndex, dataIndex); + putImageInfo(resolver, media, node, idIndex, widthIndex, heightIndex, dataIndex, + mimeTypeIndex); if (imageInfoSuccess) { putBasicNodeInfo(media, node, mimeTypeIndex, groupNameIndex, dateTakenIndex); putLocationInfo(media, node, longitudeIndex, latitudeIndex); @@ -423,20 +423,15 @@ public class CameraRollManager extends ReactContextBaseJavaModule { int idIndex, int widthIndex, int heightIndex, - int dataIndex) { + int dataIndex, + int mimeTypeIndex) { WritableMap image = new WritableNativeMap(); Uri photoUri = Uri.parse("file://" + media.getString(dataIndex)); image.putString("uri", photoUri.toString()); float width = media.getInt(widthIndex); float height = media.getInt(heightIndex); - String mimeType; - try { - mimeType = URLConnection.guessContentTypeFromName(photoUri.toString()); - } catch (StringIndexOutOfBoundsException e) { - FLog.e(ReactConstants.TAG, "Unable to guess content type from " + photoUri.toString(), e); - throw e; - } + String mimeType = media.getString(mimeTypeIndex); if (mimeType != null && mimeType.startsWith("video")) {