List of usage examples for android.support.v4.media.session MediaSessionCompat MediaSessionCompat
private MediaSessionCompat(Context context, MediaSessionImpl impl)
From source file:MainActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); MediaSessionCompat mediaSession = new MediaSessionCompat(this, getApplication().getPackageName()); mediaSession.setCallback(mMediaSessionCallback); mediaSession.setFlags(MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS); mediaSession.setActive(true);// w w w .j a va 2 s . c o m PlaybackStateCompat state = new PlaybackStateCompat.Builder().setActions(PlaybackStateCompat.ACTION_PLAY | PlaybackStateCompat.ACTION_PLAY_PAUSE | PlaybackStateCompat.ACTION_PAUSE | PlaybackStateCompat.ACTION_SKIP_TO_NEXT | PlaybackStateCompat.ACTION_SKIP_TO_PREVIOUS).build(); mediaSession.setPlaybackState(state); }
From source file:android.support.mediacompat.service.StubMediaBrowserServiceCompatWithDelayedMediaSession.java
@Override public void onCreate() { super.onCreate(); sInstance = this; mSession = new MediaSessionCompat(this, "StubMediaBrowserServiceCompatWithDelayedMediaSession"); }
From source file:org.runbuddy.tomahawk.services.TomahawkMediaBrowserService.java
@Override public void onCreate() { super.onCreate(); Log.d(TAG, "oncreate"); // Start a new MediaSession mSession = new MediaSessionCompat(this, "TomahawkMediaBrowserService"); setSessionToken(mSession.getSessionToken()); }
From source file:org.gateshipone.odyssey.playbackservice.managers.PlaybackServiceStatusHelper.java
public PlaybackServiceStatusHelper(PlaybackService playbackService) { mPlaybackService = playbackService;//from w w w . j ava 2s . c o m // Get MediaSession objects mMediaSession = new MediaSessionCompat(mPlaybackService, "OdysseyPBS"); // Register the callback for the MediaSession mMediaSession.setCallback(new OdysseyMediaSessionCallback()); mCoverLoader = new CoverBitmapLoader(mPlaybackService, new BitmapCoverListener()); // Register the button receiver PendingIntent mediaButtonPendingIntent = PendingIntent.getBroadcast(mPlaybackService, 0, new Intent(mPlaybackService, RemoteControlReceiver.class), PendingIntent.FLAG_UPDATE_CURRENT); mMediaSession.setMediaButtonReceiver(mediaButtonPendingIntent); mMediaSession.setFlags( MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS + MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); // Initialize the notification manager mNotificationManager = new OdysseyNotificationManager(mPlaybackService); }
From source file:android.support.mediacompat.service.StubMediaBrowserServiceCompat.java
@Override public void onCreate() { super.onCreate(); sInstance = this; sSession = new MediaSessionCompat(this, "StubMediaBrowserServiceCompat"); setSessionToken(sSession.getSessionToken()); }
From source file:net.simno.klingar.playback.MusicService.java
@Override public void onCreate() { super.onCreate(); Timber.d("onCreate"); KlingarApp.get(this).component().inject(this); Playback playback = new LocalPlayback(getApplicationContext(), musicController, audioManager, wifiManager); playbackManager = new PlaybackManager(queueManager, this, AndroidClock.DEFAULT, playback); session = new MediaSessionCompat(this, "MusicService"); try {//from w w w. j av a2 s .c o m MediaControllerCompat mediaController = new MediaControllerCompat(this.getApplicationContext(), session.getSessionToken()); musicController.setMediaController(mediaController); } catch (RemoteException e) { Timber.e(e, "Could not create MediaController"); throw new IllegalStateException(); } session.setCallback(playbackManager.getMediaSessionCallback()); session.setFlags(FLAG_HANDLES_MEDIA_BUTTONS | FLAG_HANDLES_TRANSPORT_CONTROLS); Context context = getApplicationContext(); Intent intent = new Intent(context, KlingarActivity.class); session.setSessionActivity(PendingIntent.getActivity(context, 99, intent, FLAG_UPDATE_CURRENT)); playbackManager.updatePlaybackState(); mediaNotificationManager = new MediaNotificationManager(this, musicController, queueManager, rx); castSessionManager = CastContext.getSharedInstance(this).getSessionManager(); castSessionManagerListener = new CastSessionManagerListener(); castSessionManager.addSessionManagerListener(castSessionManagerListener, CastSession.class); mediaRouter = MediaRouter.getInstance(getApplicationContext()); timelineManager = new TimelineManager(musicController, queueManager, media, rx); timelineManager.start(); }
From source file:com.example.android.leanback.SampleVideoFragment.java
@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); mMediaPlayerGlue = new PlaybackTransportControlGlueSample(getActivity(), new MediaPlayerAdapter(getActivity())); // create a media session inside of a fragment, and app developer can determine if connect // this media session to glue or not // as requested in b/64935838 mMediaSessionCompat = new MediaSessionCompat(getActivity(), MEDIA_SESSION_COMPAT_TOKEN); mMediaPlayerGlue.connectToMediaSession(mMediaSessionCompat); mMediaPlayerGlue.setHost(mHost);// w ww . jav a2 s . c o m mMediaPlayerGlue.setMode(PlaybackControlsRow.RepeatAction.INDEX_NONE); mMediaPlayerGlue.addPlayerCallback(new PlaybackGlue.PlayerCallback() { boolean mSecondCompleted = false; @Override public void onPlayCompleted(PlaybackGlue glue) { if (!mSecondCompleted) { mSecondCompleted = true; mMediaPlayerGlue.setSubtitle("Leanback artist Changed!"); mMediaPlayerGlue.setTitle("Leanback team at work"); String uriPath = "https://storage.googleapis.com/android-tv/Sample videos/" + "April Fool's 2013/Explore Treasure Mode with Google Maps.mp4"; mMediaPlayerGlue.getPlayerAdapter().setDataSource(Uri.parse(uriPath)); loadSeekData(mMediaPlayerGlue); playWhenReady(mMediaPlayerGlue); } else { mMediaPlayerGlue.removePlayerCallback(this); switchAnotherGlue(); } } }); mMediaPlayerGlue.setSubtitle("Leanback artist"); mMediaPlayerGlue.setTitle("Leanback team at work"); String uriPath = "https://storage.googleapis.com/android-tv/Sample videos/" + "April Fool's 2013/Explore Treasure Mode with Google Maps.mp4"; mMediaPlayerGlue.getPlayerAdapter().setDataSource(Uri.parse(uriPath)); loadSeekData(mMediaPlayerGlue); playWhenReady(mMediaPlayerGlue); }
From source file:github.popeen.dsub.util.compat.RemoteControlClientLP.java
@Override public void register(Context context, ComponentName mediaButtonReceiverComponent) { downloadService = (DownloadService) context; mediaSession = new MediaSessionCompat(downloadService, "DSub MediaSession"); Intent mediaButtonIntent = new Intent(Intent.ACTION_MEDIA_BUTTON); mediaButtonIntent.setComponent(mediaButtonReceiverComponent); PendingIntent mediaPendingIntent = PendingIntent.getBroadcast(context.getApplicationContext(), 0, mediaButtonIntent, 0);//from w w w . ja va 2s. c o m mediaSession.setMediaButtonReceiver(mediaPendingIntent); Intent activityIntent = new Intent(context, SubsonicFragmentActivity.class); activityIntent.putExtra(Constants.INTENT_EXTRA_NAME_DOWNLOAD, true); activityIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent activityPendingIntent = PendingIntent.getActivity(context, 0, activityIntent, 0); mediaSession.setSessionActivity(activityPendingIntent); mediaSession.setFlags( MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS | MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS); mediaSession.setCallback(new EventCallback()); mediaSession.setPlaybackToLocal(AudioManager.STREAM_MUSIC); mediaSession.setActive(true); Bundle sessionExtras = new Bundle(); sessionExtras.putBoolean(WEAR_BACKGROUND_THEME, true); sessionExtras.putBoolean(WEAR_RESERVE_SKIP_TO_PREVIOUS, true); sessionExtras.putBoolean(WEAR_RESERVE_SKIP_TO_NEXT, true); sessionExtras.putBoolean(AUTO_RESERVE_SKIP_TO_PREVIOUS, true); sessionExtras.putBoolean(AUTO_RESERVE_SKIP_TO_NEXT, true); mediaSession.setExtras(sessionExtras); imageLoader = SubsonicActivity.getStaticImageLoader(context); }
From source file:com.classiqo.nativeandroid_32bitz.MusicService.java
@Override public void onCreate() { super.onCreate(); LogHelper.d(TAG, "onCreate"); mMusicProvider = new MusicProvider(); mMusicProvider.retrieveMediaAsync(null); mPackageValidator = new PackageValidator(this); QueueManager queueManager = new QueueManager(mMusicProvider, getResources(), new QueueManager.MetadataUpdateListener() { @Override/*from w w w .ja v a 2 s . c o m*/ public void onMetadataChanged(MediaMetadataCompat metadata) { mSession.setMetadata(metadata); } @Override public void onMetadataRetrieveError() { mPlaybackManager.updatePlaybackState(getString(R.string.error_no_metadata)); } @Override public void onCurrentQueueIndexUpdated(int queueIndex) { mPlaybackManager.handlePlayRequest(); } @Override public void onQueueUpdated(String title, List<MediaSessionCompat.QueueItem> newQueue) { mSession.setQueue(newQueue); mSession.setQueueTitle(title); } }); LocalPlayback playback = new LocalPlayback(this, mMusicProvider); mPlaybackManager = new PlaybackManager(this, getResources(), mMusicProvider, queueManager, playback); mSession = new MediaSessionCompat(this, "MusicService"); setSessionToken(mSession.getSessionToken()); mSession.setCallback(mPlaybackManager.getMediaSessionCallback()); mSession.setFlags( MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); Context context = getApplicationContext(); Intent intent = new Intent(context, NowPlayingActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99, intent, PendingIntent.FLAG_UPDATE_CURRENT); mSession.setSessionActivity(pi); mSessionExtras = new Bundle(); // CarHelper.setSlotReservationFlags(mSessionExtras, true, true, true); // WearHelper.setSlotReservationFlags(mSessionExtras, true, true); // SearHelper.setUseBackgroundFromTheme(mSessionExtras, true); mSession.setExtras(mSessionExtras); mPlaybackManager.updatePlaybackState(null); try { mMediaNotificationManager = new MediaNotificationManager(this); } catch (RemoteException e) { throw new IllegalStateException("Could not create a MediaNotificationManager", e); } // if (!TvHelper.isTvUiMode(this)) { // mCastSessionManager = CastContext.getSharedInstance(this).getSessionManager(); // mCastSessionManagerListener = new CastSessionManagerListener(); // mCastSessionManager.addSessionManagerListener(mCastSessionManagerListener, CastSession.class); // } mMediaRouter = MediaRouter.getInstance(getApplicationContext()); // registerCarConnectionReceiver(); }
From source file:com.phearom.um.MusicService.java
@Override public void onCreate() { super.onCreate(); LogHelper.d(TAG, "onCreate"); mMusicProvider = new MusicProvider(getApplicationContext()); mMusicProvider.retrieveMediaAsync(null /* Callback */); mPackageValidator = new PackageValidator(this); QueueManager queueManager = new QueueManager(mMusicProvider, getResources(), new QueueManager.MetadataUpdateListener() { @Override/*from ww w . j a v a2 s . co m*/ public void onMetadataChanged(MediaMetadataCompat metadata) { mSession.setMetadata(metadata); } @Override public void onMetadataRetrieveError() { mPlaybackManager.updatePlaybackState(getString(R.string.error_no_metadata)); } @Override public void onCurrentQueueIndexUpdated(int queueIndex) { mPlaybackManager.handlePlayRequest(); } @Override public void onQueueUpdated(String title, List<MediaSessionCompat.QueueItem> newQueue) { mSession.setQueue(newQueue); mSession.setQueueTitle(title); } }); LocalPlayback playback = new LocalPlayback(this, mMusicProvider); mPlaybackManager = new PlaybackManager(this, getResources(), mMusicProvider, queueManager, playback); // Start a new MediaSession mSession = new MediaSessionCompat(this, "MusicService"); setSessionToken(mSession.getSessionToken()); mSession.setCallback(mPlaybackManager.getMediaSessionCallback()); mSession.setFlags( MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); Context context = getApplicationContext(); Intent intent = new Intent(context, NowPlayingActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); mSession.setSessionActivity(pi); mSessionExtras = new Bundle(); mSession.setExtras(mSessionExtras); mPlaybackManager.updatePlaybackState(null); try { mMediaNotificationManager = new MediaNotificationManager(this); } catch (RemoteException e) { throw new IllegalStateException("Could not create a MediaNotificationManager", e); } }