Example usage for android.support.v4.media.session MediaControllerCompat MediaControllerCompat

List of usage examples for android.support.v4.media.session MediaControllerCompat MediaControllerCompat

Introduction

In this page you can find the example usage for android.support.v4.media.session MediaControllerCompat MediaControllerCompat.

Prototype

public MediaControllerCompat(Context context, Token token) throws RemoteException 

Source Link

Usage

From source file:com.torrenttunes.android.ui.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) {

    try {// w w w  .j  a  va2 s .c  o  m

        mMediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);

        if (mMediaController.getMetadata() == null) {
            finish();
            return;
        }

        mMediaController.registerCallback(mCallback);
        PlaybackStateCompat state = mMediaController.getPlaybackState();
        updatePlaybackState(state);
        MediaMetadataCompat metadata = mMediaController.getMetadata();
        if (metadata != null) {
            updateMediaDescription(metadata.getDescription());
            updateDuration(metadata);
        }
        updateProgress();
        if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
                || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
            scheduleSeekbarUpdate();
        }

    } catch (RemoteException e) {
        e.printStackTrace();
    }
}

From source file:com.appdevper.mediaplayer.app.MediaNotificationManager.java

/**
 * Update the state based on a change on the session token. Called either when
 * we are running for the first time or when the media session owner has destroyed the session
 * (see {@link MediaController.Callback#onSessionDestroyed()})
 *//*from   ww  w.ja v a2  s  .  c  om*/
private void updateSessionToken() throws RemoteException {
    MediaSessionCompat.Token freshToken = mService.getSessionToken();
    if (mSessionToken == null || !mSessionToken.equals(freshToken)) {
        if (mController != null) {
            mController.unregisterCallback(mCb);
        }
        mSessionToken = freshToken;
        mController = new MediaControllerCompat(mService, mSessionToken);
        mTransportControls = mController.getTransportControls();
        if (mStarted) {
            mController.registerCallback(mCb);
        }
    }
}

From source file:cat.terrones.devops.radiofx.ui.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    MediaControllerCompat mediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);
    if (mediaController.getMetadata() == null) {
        finish();/*from   w  w w .j a  v a2  s. co m*/
        return;
    }
    setSupportMediaController(mediaController);
    mediaController.registerCallback(mCallback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);
    MediaMetadataCompat metadata = mediaController.getMetadata();
    if (metadata != null) {
        updateMediaDescription(metadata.getDescription());
        updateDuration(metadata);
    }
    updateProgress();
    if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
            || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}

From source file:com.scooter1556.sms.android.fragment.tv.TvAudioPlayerFragment.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    Log.d(TAG, "connectToSession()");

    mediaController = new MediaControllerCompat(getActivity(), token);

    MediaControllerCompat.setMediaController(getActivity(), mediaController);
    mediaController.registerCallback(callback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);/*from   w ww  .  j  a va  2  s .c om*/
    MediaMetadataCompat metadata = mediaController.getMetadata();

    if (metadata != null) {
        updateMediaDescription(metadata.getDescription());
        updateDuration(metadata);
    }

    updateProgress();
    updatePlayListRow();

    if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
            || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}

From source file:rocks.stalin.android.app.ui.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    MediaControllerCompat mediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);
    if (mediaController.getMetadata() == null) {
        finish();// ww w .  j  a v a  2s.  co m
        return;
    }
    MediaControllerCompat.setMediaController(this, mediaController);
    mediaController.registerCallback(mCallback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);
    MediaMetadataCompat metadata = mediaController.getMetadata();
    if (metadata != null) {
        updateMediaDescription(metadata.getDescription());
        updateDuration(metadata);
    }
    updateProgress();
    if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
            || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}

From source file:com.baruckis.nanodegree.spotifystreamer.PlayerService.java

private void initMediaSession() {

    mSession = new MediaSessionCompat(getApplicationContext(), "media_player_session", null, null);

    try {//ww  w .ja v  a 2 s. co  m
        mController = new MediaControllerCompat(getApplicationContext(), mSession.getSessionToken());
    } catch (RemoteException e) {
        e.printStackTrace();
    }

    mSession.setCallback(new MediaSessionCompat.Callback() {
        @Override
        public void onPlay() {
            if (mListener != null) {
                mListener.onPlayTrack();
            }
        }

        @Override
        public void onPause() {
            if (!mIsError && mListener != null) {
                mListener.onPauseTrack();
            }
            if (mIsError) {
                isPlaybackPausedByUser = true;
                buildNotification(generateAction(android.R.drawable.ic_media_play, "Play", ACTION_PLAY), false);
                if (mListener != null) {
                    mListener.onError();
                }
            }
        }

        @Override
        public void onSkipToNext() {
            if (mListener != null) {
                mListener.onNextTrack();
            }
        }

        @Override
        public void onSkipToPrevious() {
            if (mListener != null) {
                mListener.onPreviousTrack();
            }
        }
    });
}

From source file:com.scooter1556.sms.android.manager.MediaNotificationManager.java

/**
 * Update the state based on a change on the session token. Called either when
 * we are running for the first time or when the media session owner has destroyed the session.
 *///ww  w. j av  a 2  s  .com
private void updateSessionToken() throws RemoteException {
    MediaSessionCompat.Token newToken = mediaService.getSessionToken();

    if (mediaSessionToken == null && newToken != null
            || mediaSessionToken != null && !mediaSessionToken.equals(newToken)) {
        if (mediaController != null) {
            mediaController.unregisterCallback(mediaCallback);
        }
        mediaSessionToken = newToken;

        if (mediaSessionToken != null) {
            mediaController = new MediaControllerCompat(mediaService, mediaSessionToken);
            transportControls = mediaController.getTransportControls();

            if (started) {
                mediaController.registerCallback(mediaCallback);
            }
        }
    }
}

From source file:com.appdevper.mediaplayer.activity.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    MediaControllerCompat mediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);
    if (mediaController.getMetadata() == null) {
        finish();//from w  ww. j a  v  a 2s .  c o m
        return;
    }
    setSupportMediaController(mediaController);
    mediaController.registerCallback(mCallback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);
    MediaMetadataCompat metadata = mediaController.getMetadata();
    if (metadata != null) {
        updateMediaDescription(metadata.getDescription());
        updateDuration(metadata);
    }
    updateProgress();
    if (state != null && (state.getState() == PlaybackState.STATE_PLAYING
            || state.getState() == PlaybackState.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}

From source file:com.bayapps.android.robophish.ui.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    MediaControllerCompat mediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);
    if (mediaController.getMetadata() == null) {
        finish();//from  w  w w.jav  a2  s  .  co m
        return;
    }
    setSupportMediaController(mediaController);
    mediaController.registerCallback(mCallback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);
    MediaMetadataCompat metadata = mediaController.getMetadata();
    if (metadata != null) {
        String venue = metadata.getString(MediaMetadataCompat.METADATA_KEY_ALBUM);
        Log.d(TAG, "venue: " + venue);
        String location = metadata.getString(MediaMetadataCompat.METADATA_KEY_AUTHOR);
        Log.d(TAG, "location: " + location);

        updateMediaDescription(metadata.getDescription(), venue, location);
        updateDuration(metadata);
    }
    updateProgress();
    if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
            || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}

From source file:com.murati.oszk.audiobook.ui.FullScreenPlayerActivity.java

private void connectToSession(MediaSessionCompat.Token token) throws RemoteException {
    MediaControllerCompat mediaController = new MediaControllerCompat(FullScreenPlayerActivity.this, token);
    if (mediaController.getMetadata() == null) {
        finish();//from w w w . j  a  v a2 s.co  m
        return;
    }
    MediaControllerCompat.setMediaController(FullScreenPlayerActivity.this, mediaController);
    mediaController.registerCallback(mCallback);
    PlaybackStateCompat state = mediaController.getPlaybackState();
    updatePlaybackState(state);
    MediaMetadataCompat metadata = mediaController.getMetadata();
    if (metadata != null) {
        updateMediaDescription(metadata.getDescription());
        updateDuration(metadata);
    }
    updateProgress();
    if (state != null && (state.getState() == PlaybackStateCompat.STATE_PLAYING
            || state.getState() == PlaybackStateCompat.STATE_BUFFERING)) {
        scheduleSeekbarUpdate();
    }
}