从图库获取图片时,服务器提示图片格式不能解析,测试发现是格式的问题,统一写成了xxx.jpg格式,造成部分gif或者png图片无法解析,通过uri可获取图片的真实mime类型
public static String getExtensionName(Context context,Uri uri) {
Cursor cur = context.getContentResolver().query(uri, null, null, null, null);
try {
String mimeType = "";
if (cur != null) {
if (cur.moveToFirst()) {
//获取图片的mime类型
int mime_type = cur.getColumnIndex("mime_type");
mimeType = cur.getString(mime_type);
Log.d("mimeType", "mimeType = " + mimeType);
}
}
if (mimeType.endsWith("jpg"))
return ".jpg";
if (mimeType.endsWith("jpeg"))
return ".jpeg";
if (mimeType.endsWith("gif"))
return ".gif";
if (mimeType.endsWith("png"))
return ".png";
return "";
} finally {
if (cur != null) {
cur.close();
}
}
}
图片在图库中的字段参考