本文整理匯總了Java中com.google.android.exoplayer2.ExoPlayer.STATE_READY屬性的典型用法代碼示例。如果您正苦於以下問題:Java ExoPlayer.STATE_READY屬性的具體用法?Java ExoPlayer.STATE_READY怎麽用?Java ExoPlayer.STATE_READY使用的例子?那麽, 這裏精選的屬性代碼示例或許可以為您提供幫助。您也可以進一步了解該屬性所在類com.google.android.exoplayer2.ExoPlayer
的用法示例。
在下文中一共展示了ExoPlayer.STATE_READY屬性的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: handleMessage
@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case SHOW_PROGRESS:
if (player != null
&& player.getPlaybackState() == ExoPlayer.STATE_READY
&& player.getPlayWhenReady()
) {
long pos = player.getCurrentPosition();
eventEmitter.progressChanged(pos, player.getBufferedPercentage());
msg = obtainMessage(SHOW_PROGRESS);
sendMessageDelayed(msg, 1000 - (pos % 1000));
}
break;
}
}
示例2: startPlayback
private void startPlayback() {
if (player != null) {
switch (player.getPlaybackState()) {
case ExoPlayer.STATE_IDLE:
case ExoPlayer.STATE_ENDED:
initializePlayer();
break;
case ExoPlayer.STATE_BUFFERING:
case ExoPlayer.STATE_READY:
if (!player.getPlayWhenReady()) {
setPlayWhenReady(true);
}
break;
default:
break;
}
} else {
initializePlayer();
}
if (!disableFocus) {
setKeepScreenOn(true);
}
}
示例3: onPlayerStateChanged
@Override
public final void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
Log.d(tag, "state [" + playWhenReady + ", " + playbackState + "]");
playerWasPrepared |= playbackState != ExoPlayer.STATE_IDLE;
if (playbackState == ExoPlayer.STATE_ENDED
|| (playbackState == ExoPlayer.STATE_IDLE && playerWasPrepared)) {
playerFinished = true;
}
boolean playing = playWhenReady && playbackState == ExoPlayer.STATE_READY;
if (!this.playing && playing) {
lastPlayingStartTimeMs = SystemClock.elapsedRealtime();
} else if (this.playing && !playing) {
totalPlayingTimeMs += SystemClock.elapsedRealtime() - lastPlayingStartTimeMs;
}
this.playing = playing;
}
示例4: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean b, int i) {
Log.e("ExoMedia", "onPlayerStateChanged " + b + i);
if (i == ExoPlayer.STATE_READY) {
if (!isPrepar) {
isPrepar = true;
iMediaCallback.onPrepared(this);//第一次初始化
}
//緩衝好了
iMediaCallback.onInfo(this, MEDIA_INFO_BUFFERING_END, MEDIA_INFO_BUFFERING_END);
mainThreadHandler.removeCallbacks(runnable);
mainThreadHandler.post(runnable);
}
//播放完畢
if (i == ExoPlayer.STATE_ENDED) {
mainThreadHandler.removeCallbacks(runnable);
iMediaCallback.onCompletion(this);
}
if (i == ExoPlayer.STATE_BUFFERING)
iMediaCallback.onInfo(this, MEDIA_INFO_BUFFERING_START, MEDIA_INFO_BUFFERING_START);
}
示例5: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
switch (playbackState) {
case ExoPlayer.STATE_ENDED:
//Log.d(TAG, "player state -> STATE_ENDED");
mPlayer.stop();
break;
case ExoPlayer.STATE_IDLE:
//Log.d(TAG, "player state -> STATE_IDLE");
break;
case ExoPlayer.STATE_READY:
//Log.d(TAG, "player state -> STATE_READY");
break;
case ExoPlayer.STATE_BUFFERING:
// Log.d(TAG, "player state -> STATE_BUFFERING");
break;
default:
break;
}
}
示例6: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
switch (playbackState) {
case ExoPlayer.STATE_BUFFERING:
case ExoPlayer.STATE_READY:
replayImageButton.setVisibility(View.GONE);
exoButtonsFrameLayout.setVisibility(View.VISIBLE);
break;
case ExoPlayer.STATE_ENDED:
exoButtonsFrameLayout.setVisibility(View.GONE);
replayImageButton.setVisibility(View.VISIBLE);
break;
default:
break;
}
}
示例7: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
switch (playbackState) {
case ExoPlayer.STATE_BUFFERING:
replayImageButton.setVisibility(View.GONE);
exoButtonsFrameLayout.setVisibility(View.VISIBLE);
break;
case ExoPlayer.STATE_READY:
replayImageButton.setVisibility(View.GONE);
exoButtonsFrameLayout.setVisibility(View.VISIBLE);
break;
case ExoPlayer.STATE_ENDED:
exoButtonsFrameLayout.setVisibility(View.GONE);
replayImageButton.setVisibility(View.VISIBLE);
break;
default:
break;
}
}
示例8: run
@Override
public void run() {
int state = mediaPlayer.getPlaybackState();
if (state == ExoPlayer.STATE_READY) {
long pos = mediaPlayer.getCurrentPosition();
float speed = mediaPlayer.getPlaybackParameters().speed;
if (!notificationManager.startNotification()) {
notificationManager.updateNotification();
}
stateBuilder.setBufferedPosition(mediaPlayer.getBufferedPercentage());
int sessionState = mediaPlayer.getPlayWhenReady() ? PlaybackStateCompat.STATE_PLAYING : PlaybackStateCompat.STATE_PAUSED;
mediaSession.setPlaybackState(stateBuilder.setState(sessionState, pos, speed).build());
if (mediaPlayer.getPlayWhenReady()) {
progressHandler.postDelayed(progressRunnable, 1000 - (pos % 1000));
}
}
}
示例9: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState)
{
switch (playbackState) {
case ExoPlayer.STATE_IDLE:
case ExoPlayer.STATE_BUFFERING:
case ExoPlayer.STATE_READY:
if (callback != null) {
callback.onPlaybackStatusChanged(getState());
}
break;
case ExoPlayer.STATE_ENDED:
// The media player finished playing the current song.
if (callback != null) {
callback.onCompletion();
}
break;
}
}
示例10: getPlayerStateString
private String getPlayerStateString() {
String text = "playWhenReady:" + player.getPlayWhenReady() + " playbackState:";
switch (player.getPlaybackState()) {
case ExoPlayer.STATE_BUFFERING:
text += "buffering";
break;
case ExoPlayer.STATE_ENDED:
text += "ended";
break;
case ExoPlayer.STATE_IDLE:
text += "idle";
break;
case ExoPlayer.STATE_READY:
text += "ready";
break;
default:
text += "unknown";
break;
}
return text;
}
示例11: getState
@Override
public int getState() {
if (mExoPlayer == null) {
return mExoPlayerNullIsStopped
? PlaybackStateCompat.STATE_STOPPED
: PlaybackStateCompat.STATE_NONE;
}
switch (mExoPlayer.getPlaybackState()) {
case ExoPlayer.STATE_IDLE:
return PlaybackStateCompat.STATE_PAUSED;
case ExoPlayer.STATE_BUFFERING:
return PlaybackStateCompat.STATE_BUFFERING;
case ExoPlayer.STATE_READY:
return mExoPlayer.getPlayWhenReady()
? PlaybackStateCompat.STATE_PLAYING
: PlaybackStateCompat.STATE_PAUSED;
case ExoPlayer.STATE_ENDED:
return PlaybackStateCompat.STATE_PAUSED;
default:
return PlaybackStateCompat.STATE_NONE;
}
}
示例12: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
switch (playbackState) {
case ExoPlayer.STATE_IDLE:
case ExoPlayer.STATE_BUFFERING:
case ExoPlayer.STATE_READY:
if (mCallback != null) {
mCallback.onPlaybackStatusChanged(getState());
}
break;
case ExoPlayer.STATE_ENDED:
// The media player finished playing the current song.
if (mCallback != null) {
mCallback.onCompletion();
}
break;
}
}
示例13: onPlayerStateChanged
/************************
* ExoPlayer2.Listener
************************/
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
String text = "playWhenReady=" + playWhenReady + ", playbackState=";
switch (playbackState) {
case ExoPlayer.STATE_BUFFERING:
text += "buffering";
break;
case ExoPlayer.STATE_ENDED:
text += "ended";
break;
case ExoPlayer.STATE_IDLE:
text += "idle";
break;
case ExoPlayer.STATE_READY:
onVideoLoaded();
text += "ready";
break;
default:
text += "unknown";
break;
}
Log.d(TAG, "onStateChanged: " + text);
}
示例14: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
String text = "onStateChanged: playWhenReady=" + playWhenReady + ", playbackState=";
switch (playbackState) {
case ExoPlayer.STATE_IDLE:
text += "idle";
eventEmitter.idle();
break;
case ExoPlayer.STATE_BUFFERING:
text += "buffering";
onBuffering(true);
break;
case ExoPlayer.STATE_READY:
text += "ready";
eventEmitter.ready();
onBuffering(false);
startProgressHandler();
videoLoaded();
break;
case ExoPlayer.STATE_ENDED:
text += "ended";
eventEmitter.end();
onStopPlayback();
break;
default:
text += "unknown";
break;
}
Log.d(TAG, text);
}
示例15: onPlayerStateChanged
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
if((playbackState == ExoPlayer.STATE_READY) && playWhenReady){
mStateBuilder.setState(PlaybackStateCompat.STATE_PLAYING,
mExoPlayer.getCurrentPosition(), 1f);
} else if((playbackState == ExoPlayer.STATE_READY)) {
mStateBuilder.setState(PlaybackStateCompat.STATE_PAUSED,
mExoPlayer.getCurrentPosition(), 1f);
}
mMediaSession.setPlaybackState(mStateBuilder.build());
}