public static Bitmap Getvideofirstframe (context context, Uri Uri) {
Bitmap Bitmap = null;
String className = "Android.media.MediaMetadataRetriever";
Object objectmediametadataretriever = null;
Method release = null;
try {
Reflection Get video First frame
Objectmediametadataretriever = Class.forName (className). newinstance ();
Method Setdatasourcemethod = Class.forName (className). GetMethod ("Setdatasource", Context.class, Uri.class);
Setdatasourcemethod.invoke (objectmediametadataretriever, context, URI);
Method Getframeattimemethod = Class.forName (className). GetMethod ("Getframeattime");
Bitmap = (bitmap) getframeattimemethod.invoke (objectmediametadataretriever);
} catch (Exception e) {
E.printstacktrace ();
} finally {
try {
if (release! = null) {
Release.invoke (Objectmediametadataretriever);
}
} catch (Exception e) {
E.printstacktrace ();
}
}
return bitmap;
}
Get the first frame of the video