/** * Starts the playback for the video specified in {@link #setVideoURI(android.net.Uri)} or {@link * #setVideoPath(String)}. This should be called after the VideoView is correctly prepared (see * {@link #setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener)}) */ public void start() { if (!useExo) { videoView.start(); } else { emExoPlayer.setPlayWhenReady(true); } if (defaultControls != null) { defaultControls.updatePlayPauseImage(true); defaultControls.hideDelayed(DefaultControls.DEFAULT_CONTROL_HIDE_DELAY); } playRequested = true; startProgressPoll(); }
/** * Enables and disables the media control overlay for the video view * * @param enabled Weather the default video controls are enabled (default: false) */ public void setDefaultControlsEnabled(boolean enabled) { if (defaultControls == null && enabled) { defaultControls = EMDeviceUtil.isDeviceTV(getContext()) ? new DefaultControlsLeanback(getContext()) : new DefaultControlsMobile(getContext()); defaultControls.setVideoView(this); defaultControls.setBus(bus); addView(defaultControls); startProgressPoll(); } else if (defaultControls != null && !enabled) { removeView(defaultControls); defaultControls = null; if (bus == null) { stopProgressPoll(); } } // Sets the onTouch listener to show the default controls TouchListener listener = new TouchListener(getContext()); setOnTouchListener(enabled ? listener : null); }
/** * Starts the progress poll with the callback to be informed of the progress events. * * @param callback The Callback to inform of progress events */ public void startProgressPoll(EMProgressCallback callback) { progressCallback = callback; startProgressPoll(); }
/** * Starts the progress poll. If you have already called {@link #setBus(EMEventBus)} then you * should use the {@link #startProgressPoll()} method instead. * * @param bus The EventBus event dispatcher that the listener is connected to */ public void startProgressPoll(@Nullable EMEventBus bus) { setBus(bus); startProgressPoll(); }