multiimageview: fix rare crash on mediaPlayer.getTrackInfo()

just android things, random illegalstateexceptions on the videoview,
just catch it and return a default value.
refactor-toolbar
Floens 8 years ago
parent 670d1ffdae
commit cc184e4e12
  1. 6
      Clover/app/src/main/java/org/floens/chan/ui/view/MultiImageView.java

@ -411,6 +411,7 @@ public class MultiImageView extends FrameLayout implements View.OnClickListener
}
private boolean hasMediaPlayerAudioTracks(MediaPlayer mediaPlayer) {
try {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
for (MediaPlayer.TrackInfo trackInfo : mediaPlayer.getTrackInfo()) {
if (trackInfo.getTrackType() == MediaPlayer.TrackInfo.MEDIA_TRACK_TYPE_AUDIO) {
@ -423,6 +424,11 @@ public class MultiImageView extends FrameLayout implements View.OnClickListener
// It'll just show the icon without doing anything. Remove when 4.0 is dropped.
return true;
}
} catch (IllegalStateException e) {
// getTrackInfo() raises an IllegalStateException on some devices.
// Return a default value.
return true;
}
}
private void onVideoError() {

Loading…
Cancel
Save