pull/123/head
FongMi 3 years ago
parent 1ecb1cdb15
commit 6667136bb0
  1. 1
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
  2. 3
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  3. 6
      app/src/main/java/com/fongmi/android/tv/event/PlayerEvent.java
  4. 30
      app/src/main/java/com/fongmi/android/tv/player/Players.java

@ -654,7 +654,6 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis
}
private void setR1Callback() {
App.removeCallbacks(mR1);
App.post(mR1, Constant.INTERVAL_HIDE);
}

@ -384,12 +384,10 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
}
private void setR1Callback() {
App.removeCallbacks(mR1);
App.post(mR1, Constant.INTERVAL_HIDE);
}
private void setR2Callback() {
App.removeCallbacks(mR2);
App.post(mR2, Constant.INTERVAL_HIDE);
}
@ -527,7 +525,6 @@ public class LiveActivity extends BaseActivity implements GroupPresenter.OnClick
@Override
public void setUITimer() {
App.removeCallbacks(mR0);
App.post(mR0, Constant.INTERVAL_HIDE);
}

@ -1,11 +1,17 @@
package com.fongmi.android.tv.event;
import com.google.android.exoplayer2.Player;
import org.greenrobot.eventbus.EventBus;
public class PlayerEvent {
private final int state;
public static void ready() {
EventBus.getDefault().post(new PlayerEvent(Player.STATE_READY));
}
public static void state(int state) {
EventBus.getDefault().post(new PlayerEvent(state));
}

@ -341,9 +341,12 @@ public class Players implements Player.Listener, IMediaPlayer.OnInfoListener, IM
}
private void setTimeoutCheck() {
App.post(timeout, Constant.TIMEOUT_PLAY);
PlayerEvent.state(0);
}
private void removeTimeoutCheck() {
App.removeCallbacks(timeout);
App.post(timeout, Constant.TIMEOUT_PLAY);
}
private void setTrack(Track item) {
@ -381,14 +384,23 @@ public class Players implements Player.Listener, IMediaPlayer.OnInfoListener, IM
@Override
public void onPlayerError(@NonNull PlaybackException error) {
this.errorCode = error.errorCode;
App.removeCallbacks(timeout);
removeTimeoutCheck();
ErrorEvent.format();
}
@Override
public void onPlaybackStateChanged(int state) {
if (state == Player.STATE_READY) App.removeCallbacks(timeout);
PlayerEvent.state(state);
switch (state) {
case Player.STATE_READY:
removeTimeoutCheck();
PlayerEvent.ready();
break;
case Player.STATE_BUFFERING:
case Player.STATE_ENDED:
case Player.STATE_IDLE:
PlayerEvent.state(state);
break;
}
}
@Override
@ -400,8 +412,8 @@ public class Players implements Player.Listener, IMediaPlayer.OnInfoListener, IM
case IMediaPlayer.MEDIA_INFO_BUFFERING_END:
case IMediaPlayer.MEDIA_INFO_VIDEO_SEEK_RENDERING_START:
case IMediaPlayer.MEDIA_INFO_AUDIO_SEEK_RENDERING_START:
PlayerEvent.state(Player.STATE_READY);
App.removeCallbacks(timeout);
removeTimeoutCheck();
PlayerEvent.ready();
return true;
default:
return true;
@ -410,15 +422,15 @@ public class Players implements Player.Listener, IMediaPlayer.OnInfoListener, IM
@Override
public boolean onError(IMediaPlayer mp, int what, int extra) {
App.removeCallbacks(timeout);
removeTimeoutCheck();
ErrorEvent.format();
return true;
}
@Override
public void onPrepared(IMediaPlayer mp) {
PlayerEvent.state(Player.STATE_READY);
App.removeCallbacks(timeout);
removeTimeoutCheck();
PlayerEvent.ready();
}
@Override

Loading…
Cancel
Save