@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Getting the cast context later than onStart can cause device discovery not to take place. try { castContext = CastContext.getSharedInstance(this); } catch (RuntimeException e) { Throwable cause = e.getCause(); while (cause != null) { if (cause instanceof DynamiteModule.LoadingException) { setContentView(R.layout.cast_context_error_message_layout); return; } cause = cause.getCause(); } // Unknown error. We propagate it. throw e; } setContentView(R.layout.main_activity); localPlayerView = findViewById(R.id.local_player_view); localPlayerView.requestFocus(); castControlView = findViewById(R.id.cast_control_view); mediaQueueList = findViewById(R.id.sample_list); ItemTouchHelper helper = new ItemTouchHelper(new RecyclerViewCallback()); helper.attachToRecyclerView(mediaQueueList); mediaQueueList.setLayoutManager(new LinearLayoutManager(this)); mediaQueueList.setHasFixedSize(true); mediaQueueListAdapter = new MediaQueueListAdapter(); findViewById(R.id.add_sample_button).setOnClickListener(this); }
playerView.requestFocus();
simpleExoPlayerView.requestFocus();
private void initExoPlayer() { PlayerView playerView = findViewById(R.id.exoplayer_view); playerView.requestFocus(); playerView.setControllerAutoShow(false); playerView.setUseController(false); playerView.setKeepScreenOn(true); DefaultRenderersFactory rendererFactory = new DefaultRenderersFactory(this, DefaultRenderersFactory.EXTENSION_RENDERER_MODE_PREFER); TrackSelector trackSelector = new DefaultTrackSelector(); DefaultLoadControl.Builder builder = new DefaultLoadControl.Builder(); builder.setAllocator(new DefaultAllocator(true, C.DEFAULT_BUFFER_SEGMENT_SIZE)); builder.setBufferDurationsMs( 2000, 15000, 1500, 0 ); LoadControl loadControl = builder.createDefaultLoadControl(); player = ExoPlayerFactory.newSimpleInstance(this, rendererFactory, trackSelector, loadControl); player.addVideoListener(new com.google.android.exoplayer2.video.VideoListener() { @Override public void onVideoSizeChanged(int width, int height, int unappliedRotationDegrees, float pixelWidthHeightRatio) { } @Override public void onRenderedFirstFrame() { mMPCheckTime = System.nanoTime(); } }); playerView.setPlayer(player); }