fixed controls hiding/showing with taps, and screen dimming issues
This commit is contained in:
parent
20b327215c
commit
0e543413d5
3 changed files with 13 additions and 6 deletions
|
@ -32,6 +32,7 @@ import java.util.List;
|
||||||
public class LocalPlayerActivity extends AppCompatActivity implements Player.EventListener,
|
public class LocalPlayerActivity extends AppCompatActivity implements Player.EventListener,
|
||||||
LocalPlayerListener, PlaybackParameterDialog.Callback {
|
LocalPlayerListener, PlaybackParameterDialog.Callback {
|
||||||
private LocalPlayer localPlayer;
|
private LocalPlayer localPlayer;
|
||||||
|
private PlayerView playerView;
|
||||||
public static final String TAG = "LocalPlayerActivity";
|
public static final String TAG = "LocalPlayerActivity";
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -49,14 +50,17 @@ public class LocalPlayerActivity extends AppCompatActivity implements Player.Eve
|
||||||
|
|
||||||
localPlayer = new LocalPlayer(this);
|
localPlayer = new LocalPlayer(this);
|
||||||
localPlayer.initialize(uri, segments);
|
localPlayer.initialize(uri, segments);
|
||||||
|
localPlayer.setListener(this);
|
||||||
|
|
||||||
final PlayerView playerView = findViewById(R.id.player_view);
|
playerView = findViewById(R.id.player_view);
|
||||||
playerView.setPlayer(localPlayer.getExoPlayer());
|
playerView.setPlayer(localPlayer.getExoPlayer());
|
||||||
|
|
||||||
playerView.getVideoSurfaceView().setOnLongClickListener(v -> {
|
playerView.getVideoSurfaceView().setOnLongClickListener(v -> {
|
||||||
showPlaybackParameterDialog();
|
showPlaybackParameterDialog();
|
||||||
return true;
|
return false;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
playerView.getVideoSurfaceView().setOnClickListener(v -> playerView.performClick());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showPlaybackParameterDialog() {
|
public void showPlaybackParameterDialog() {
|
||||||
|
@ -98,7 +102,7 @@ public class LocalPlayerActivity extends AppCompatActivity implements Player.Eve
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBuffering(final SimpleExoPlayer player) {
|
public void onBuffering(final SimpleExoPlayer player) {
|
||||||
|
setKeepScreenOn(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -153,6 +157,7 @@ public class LocalPlayerActivity extends AppCompatActivity implements Player.Eve
|
||||||
} else {
|
} else {
|
||||||
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
|
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
|
||||||
}
|
}
|
||||||
|
playerView.getRootView().setKeepScreenOn(keepScreenOn);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void hideSystemUi(final boolean isLandscape) {
|
private void hideSystemUi(final boolean isLandscape) {
|
||||||
|
|
|
@ -8,6 +8,7 @@ import android.widget.Toast;
|
||||||
|
|
||||||
import androidx.preference.PreferenceManager;
|
import androidx.preference.PreferenceManager;
|
||||||
|
|
||||||
|
import com.google.android.exoplayer2.C;
|
||||||
import com.google.android.exoplayer2.PlaybackParameters;
|
import com.google.android.exoplayer2.PlaybackParameters;
|
||||||
import com.google.android.exoplayer2.Player.EventListener;
|
import com.google.android.exoplayer2.Player.EventListener;
|
||||||
import com.google.android.exoplayer2.SeekParameters;
|
import com.google.android.exoplayer2.SeekParameters;
|
||||||
|
@ -61,6 +62,7 @@ public class LocalPlayer implements EventListener {
|
||||||
simpleExoPlayer.addListener(this);
|
simpleExoPlayer.addListener(this);
|
||||||
simpleExoPlayer.setSeekParameters(PlayerHelper.getSeekParameters(context));
|
simpleExoPlayer.setSeekParameters(PlayerHelper.getSeekParameters(context));
|
||||||
simpleExoPlayer.setHandleAudioBecomingNoisy(true);
|
simpleExoPlayer.setHandleAudioBecomingNoisy(true);
|
||||||
|
simpleExoPlayer.setWakeMode(C.WAKE_MODE_NETWORK);
|
||||||
|
|
||||||
final PlaybackParameters playbackParameters = simpleExoPlayer.getPlaybackParameters();
|
final PlaybackParameters playbackParameters = simpleExoPlayer.getPlaybackParameters();
|
||||||
final float speed = mPrefs.getFloat(context.getString(
|
final float speed = mPrefs.getFloat(context.getString(
|
||||||
|
|
|
@ -1,16 +1,16 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<androidx.constraintlayout.widget.ConstraintLayout
|
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:background="@color/black"
|
android:background="@color/black"
|
||||||
tools:context=".LocalPlayerActivity">
|
tools:context=".LocalPlayerActivity">
|
||||||
|
|
||||||
<com.google.android.exoplayer2.ui.PlayerView
|
<com.google.android.exoplayer2.ui.PlayerView
|
||||||
android:id="@+id/player_view"
|
android:id="@+id/player_view"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:show_buffering="when_playing"
|
app:show_buffering="when_playing"
|
||||||
app:show_shuffle_button="true"/>
|
app:show_shuffle_button="true" />
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
Loading…
Reference in a new issue