@Override public void onCreate() { super.onCreate(); sInstance = this; mContext = this; mSession = new MediaSession(this, "WearBrowserService"); setSessionToken(mSession.getSessionToken()); mSession.setCallback(new MediaSessionCallback()); mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS); }
@Override public void onDestroy() { mServiceStarted = false; mSession.release(); }
private void setUpMediaSession() { mSession = new MediaSession(this, "remusic"); mSession.setCallback(new MediaSession.Callback() { @Override public void onPause() { mSession.setFlags(MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS);
mMediaSession.setActive(false); mMediaSession.release(); mMediaSession = new MediaSession(getContext(), MEDIA_SESSION_TAG); mMediaSession.setCallback(new MediaSession.Callback() { @Override public boolean onMediaButtonEvent(Intent mediaButtonIntent) { mMediaSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS); if (!mMediaSession.isActive()) { mMediaSession.setActive(true);
final MediaSession mediaSession = new MediaSession(this, "debug tag"); mediaSession.setMetadata(new MediaMetadata.Builder() .putBitmap(MediaMetadata.METADATA_KEY_ALBUM_ART, artwork) .putString(MediaMetadata.METADATA_KEY_ARTIST, "Pink Floyd") .build()); mediaSession.setActive(true); mediaSession.setCallback(new MediaSession.Callback() { mediaSession.setFlags(MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS); .setMediaSession(mediaSession.getSessionToken()) final TransportControls controls = mediaSession.getController().getTransportControls();
/** * Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.playback_controls); loadViews(); setupCallbacks(); mSession = new MediaSession(this, "LeanbackSampleApp"); mSession.setCallback(new MediaSessionCallback()); mSession.setFlags(MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS); mSession.setActive(true); }
return; mMediaSession = new MediaSession(mContext, "Vanilla Music"); mMediaSession.setCallback(new MediaSession.Callback() { @Override public void onPause() { mMediaSession.setMediaButtonReceiver(pendingIntent); mMediaSession.setFlags(MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS | MediaSession.FLAG_HANDLES_MEDIA_BUTTONS);
MediaSession.Callback callback = new MediaSession.Callback() { @Override public void onPlay() { // Handle the play button } }; MediaSession mediaSession = new MediaSession(context, TAG); // Debugging tag, any string mediaSession.setFlags( MediaSession.FLAG_HANDLES_MEDIA_BUTTONS | MediaSession.FLAG_HANDLES_TRANSPORT_CONTROLS); mediaSession.setCallback(callback); // Set up what actions you support and the state of your player mediaSession.setState( new PlaybackState.Builder() .setActions(PlaybackState.ACTION_PLAY | PlaybackState.ACTION_PAUSE | PlaybackState.ACTION_PLAY_PAUSE); .setState(PlaybackState.STATE_PLAYING, 0, // playback position in milliseconds 1.0); // playback speed // Call this when you start playback after receiving audio focus mediaSession.setActive(true);
@Test public void mediaSessionCompat_creation() throws Exception { // Should not result in an exception. new MediaSession(ApplicationProvider.getApplicationContext(), "test"); } }
public void checkForMediaSession() { MediaSessionManager manager = (MediaSessionManager) this.mContext.getApplicationContext().getSystemService("media_session"); if (manager != null) { if (!this.mIsTestRunning) { new MediaSession(this.mContext.getApplicationContext(), "NowPlayCardListener").release(); } onActiveSessionsChanged(manager.getActiveSessions(null)); } } }
@Override public void closePlayer() { stopVideo(); PlaybackState.Builder stateBuilder = new PlaybackState.Builder(); stateBuilder.setState(PlaybackState.STATE_PAUSED, 12, 1); mMediaSession.setPlaybackState(stateBuilder.build()); mMediaSession.setActive(false); Log.i(TAG, "closePlayer : " + mMediaSession.isActive()); }
session.setMetadata(metadataBuilder.build()); session.setPlaybackState(new PlaybackState.Builder() .setState(playbackState, service.getPosition(), 1.0f) .setActions(PlaybackState.ACTION_PLAY | PlaybackState.ACTION_STOP | PlaybackState.ACTION_PAUSE | PlaybackState.ACTION_PLAY_PAUSE | PlaybackState.ACTION_SKIP_TO_NEXT | PlaybackState.ACTION_SKIP_TO_PREVIOUS) .build()); mMediaSession.setActive(true);
private void releaseServiceUiAndStop() { if (isPlaying() || mPausedByTransientLossOfFocus || mPlayerHandler.hasMessages(TRACK_ENDED)) { return; } if (D) Log.d(TAG, "Nothing is playing anymore, releasing notification"); cancelNotification(); mAudioManager.abandonAudioFocus(mAudioFocusListener); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) mSession.setActive(false); if (!mServiceInUse) { saveQueue(true); stopSelf(mServiceStartId); } }
public static void updateMediaSession(boolean updateMetadata, MediaMetadata.Builder mediaBuilder, final MediaSession mediaSession, final int playbackState, final long position, final float speed) { if (mediaSession.isActive()) { if (updateMetadata) { mediaSession.setMetadata(mediaBuilder.build()); } PlaybackState.Builder stateBuilder = new PlaybackState.Builder(); stateBuilder.setState(playbackState, position, speed); mediaSession.setPlaybackState(stateBuilder.build()); } } }
mController =new MediaController(getApplicationContext(), mSession.getSessionToken()); mSession.setCallback(new MediaSession.Callback(){ @Override public void onPlay() {
mSession.setPlaybackState(new PlaybackState.Builder() .setState(playState, position(), 1.0f) .setActions(PlaybackState.ACTION_PLAY | PlaybackState.ACTION_PAUSE | PlaybackState.ACTION_PLAY_PAUSE | mSession.setMetadata(new MediaMetadata.Builder() .putString(MediaMetadata.METADATA_KEY_ARTIST, getArtistName()) .putString(MediaMetadata.METADATA_KEY_ALBUM_ARTIST, getAlbumArtistName()) .build()); mSession.setPlaybackState(new PlaybackState.Builder() .setState(playState, position(), 1.0f) .setActions(PlaybackState.ACTION_PLAY | PlaybackState.ACTION_PAUSE | PlaybackState.ACTION_PLAY_PAUSE |
public static void setMetadata(Object sessionObj, Object metadataObj) { ((MediaSession)sessionObj).setMetadata((MediaMetadata)metadataObj); }
public static void setFlags(Object sessionObj, int flags) { ((MediaSession)sessionObj).setFlags(flags); }