List of usage examples for android.support.v4.media.session MediaSessionCompat MediaSessionCompat
private MediaSessionCompat(Context context, MediaSessionImpl impl)
From source file:com.reallynourl.nourl.fmpfoldermusicplayer.backend.MediaService.java
private void setupMediaSession() { mMediaSession = new MediaSessionCompat(getApplicationContext(), MEDIA_SESSION_NAME); mMediaSession.setCallback(mMediaEventReceiver); mMediaSession.setMediaButtonReceiver(PendingIntent.getBroadcast(getApplicationContext(), INTENT_MEDIA_KEYS, new Intent(getApplicationContext(), MediaIntentReceiver.class), PendingIntent.FLAG_UPDATE_CURRENT)); mMediaSession.setQueueTitle("Now Playing"); mMediaSession.setSessionActivity(PendingIntent.getActivity(getApplicationContext(), INTENT_SESSION_ACTIVITY, new Intent(getApplicationContext(), MainActivity.class), PendingIntent.FLAG_UPDATE_CURRENT)); }
From source file:org.gateshipone.malp.application.background.NotificationManager.java
/** * Shows the notification//from w w w . java2s. c om */ public void showNotification() { if (mMediaSession == null) { mMediaSession = new MediaSessionCompat(mService, mService.getString(R.string.app_name)); mMediaSession.setCallback(new MALPMediaSessionCallback()); mVolumeControlProvider = new MALPVolumeControlProvider(); mMediaSession.setPlaybackToRemote(mVolumeControlProvider); mMediaSession.setActive(true); } mService.startForeground(NOTIFICATION_ID, mNotification); updateNotification(mLastTrack, mLastStatus.getPlaybackState()); mSessionActive = true; }
From source file:com.scooter1556.sms.lib.android.service.AudioPlayerService.java
@Override public void onCreate() { // Create the service super.onCreate(); restService = RESTService.getInstance(); currentListPosition = 0;// w w w . ja v a 2s . c o m mediaElementList = new ArrayList<>(); // Setup media session mediaSessionCallback = new MediaSessionCallback(); mediaSession = new MediaSessionCompat(this, "SMSPlayer"); mediaSession.setFlags( MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); mediaSession.setCallback(mediaSessionCallback); mediaState = PlaybackStateCompat.STATE_NONE; updatePlaybackState(); audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); PowerManager powerManager = (PowerManager) getSystemService(POWER_SERVICE); wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "sms"); wifiLock = ((WifiManager) getSystemService(Context.WIFI_SERVICE)).createWifiLock(WifiManager.WIFI_MODE_FULL, "sms"); }
From source file:com.github.mkjensen.dml.ondemand.PlaybackFragment.java
private void initMediaSession() { FragmentActivity activity = getActivity(); mediaSession = new MediaSessionCompat(activity, TAG); mediaSession.setCallback(new MediaSessionCallback()); mediaSession.setFlags(FLAG_HANDLES_MEDIA_BUTTONS | FLAG_HANDLES_TRANSPORT_CONTROLS); mediaSession.setActive(true);//from ww w . jav a 2s . c o m setPlaybackState(STATE_NONE); activity.setSupportMediaController(mediaSession.getController()); }
From source file:com.example.android.supportv4.media.MediaBrowserServiceSupport.java
@Override public void onCreate() { super.onCreate(); Log.d(TAG, "onCreate"); mPlayingQueue = new ArrayList<>(); mMusicProvider = new MusicProvider(); mPackageValidator = new PackageValidator(this); // Start a new MediaSession mSession = new MediaSessionCompat(this, "MusicService"); setSessionToken(mSession.getSessionToken()); mSession.setCallback(new MediaSessionCallback()); mSession.setFlags(// ww w . j a v a 2 s. c o m MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); mPlayback = new Playback(this, mMusicProvider); mPlayback.setState(PlaybackStateCompat.STATE_NONE); mPlayback.setCallback(this); mPlayback.start(); Context context = getApplicationContext(); Intent intent = new Intent(context, MediaBrowserSupport.class); PendingIntent pi = PendingIntent.getActivity(context, 99 /*request code*/, intent, PendingIntent.FLAG_UPDATE_CURRENT); mSession.setSessionActivity(pi); Bundle extras = new Bundle(); CarHelper.setSlotReservationFlags(extras, true, true, true); mSession.setExtras(extras); updatePlaybackState(null); mMediaNotificationManager = new MediaNotificationManager(this); }
From source file:leoisasmendi.android.com.suricatepodcast.services.MediaPlayerService.java
private void initMediaSession() throws RemoteException { if (mediaSessionManager != null) return; //mediaSessionManager exists mediaSessionManager = (MediaSessionManager) getSystemService(Context.MEDIA_SESSION_SERVICE); // Create a new MediaSession mediaSession = new MediaSessionCompat(getApplicationContext(), "AudioPlayer"); //Get MediaSessions transport controls transportControls = mediaSession.getController().getTransportControls(); //set MediaSession -> ready to receive media commands mediaSession.setActive(true);//from ww w . java 2s . co m //indicate that the MediaSession handles transport control commands // through its MediaSessionCompat.Callback. mediaSession.setFlags(MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); //Set mediaSession's MetaData updateMetaData(); // Attach Callback to receive MediaSession updates mediaSession.setCallback(new MediaSessionCompat.Callback() { // Implement callbacks @Override public void onPlay() { super.onPlay(); resumeMedia(); publishStatus(STATUS_PLAYING); buildNotification(PlaybackStatus.PLAYING); } @Override public void onPause() { super.onPause(); pauseMedia(); publishStatus(STATUS_PAUSED); buildNotification(PlaybackStatus.PAUSED); } @Override public void onSkipToNext() { super.onSkipToNext(); skipToNext(); updateMetaData(); buildNotification(PlaybackStatus.PLAYING); } @Override public void onSkipToPrevious() { super.onSkipToPrevious(); skipToPrevious(); updateMetaData(); buildNotification(PlaybackStatus.PLAYING); } @Override public void onStop() { super.onStop(); publishStatus(STATUS_STOPED); removeNotification(); //Stop the service stopSelf(); } }); }
From source file:com.appdevper.mediaplayer.app.MusicService.java
@Override public void onCreate() { super.onCreate(); Log.d(TAG, "onCreate"); mPlayingQueue = new ArrayList<>(); mMusicProvider = MusicProvider.getInstance(); QueueManager queueManager = new QueueManager(mMusicProvider, getResources(), new QueueManager.MetadataUpdateListener() { @Override// w w w. j a 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); // 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, MainActivity.class); PendingIntent pi = PendingIntent.getActivity(context, 99, 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); } VideoCastManager.getInstance().addVideoCastConsumer(mCastConsumer); mMediaRouter = MediaRouter.getInstance(getApplicationContext()); }
From source file:com.example.lzhang.stockchartt.media.MusicService.java
@Override public void onCreate() { super.onCreate(); LogHelper.d(TAG, "onCreate"); mMusicProvider = new MusicProvider(); // To make the app more responsive, fetch and cache catalog information now. // This can help improve the response time in the method // {@link #onLoadChildren(String, Result<List<MediaItem>>) onLoadChildren()}. // mMusicProvider.retrieveMediaAsync(null /* Callback */); mPackageValidator = new PackageValidator(this); QueueManager queueManager = new QueueManager(mMusicProvider, getResources(), new QueueManager.MetadataUpdateListener() { @Override//from w w w . jav a2 s .c om 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, MusicPlayerActivity.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); } }
From source file:com.example.android.leanback.MediaSessionService.java
@Override public void onCreate() { super.onCreate(); // This service can be created for multiple times, the objects will only be created when // it is null if (mMediaSession == null) { mMediaSession = new MediaSessionCompat(this, MUSIC_PLAYER_SESSION_TOKEN); mMediaSession.setFlags(MediaSessionCompat.FLAG_HANDLES_MEDIA_BUTTONS | MediaSessionCompat.FLAG_HANDLES_TRANSPORT_CONTROLS); mMediaSession.setCallback(new MediaSessionCallback()); }/*from w w w .j av a 2 s .c om*/ if (mAudioManager == null) { // Create audio manager through system service mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); } // initialize the player (including activate media session, request audio focus and // set up the listener to listen to player's state) initializePlayer(); }
From source file:org.copticchurchlibrary.arabicreader.MusicService.java
@Override public void onCreate() { super.onCreate(); LogHelper.d(TAG, "onCreate"); mMusicProvider = new MusicProvider(); // To make the app more responsive, fetch and cache catalog information now. // This can help improve the response time in the method // {@link #onLoadChildren(String, Result<List<MediaItem>>) onLoadChildren()}. mMusicProvider.retrieveMediaAsync(null /* Callback */); mPackageValidator = new PackageValidator(this); QueueManager queueManager = new QueueManager(mMusicProvider, getResources(), new QueueManager.MetadataUpdateListener() { @Override/* ww w. j ava 2 s. c o m*/ public void onMetadataChanged(MediaMetadataCompat metadata) { mSession.setMetadata(metadata); } @Override public void onMetadataRetrieveError() { mPlaybackManager.updatePlaybackState( getString(org.copticchurchlibrary.arabicreader.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(); CarHelper.setSlotReservationFlags(mSessionExtras, true, true, true); WearHelper.setSlotReservationFlags(mSessionExtras, true, true); WearHelper.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(); }