<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "//www.w3.org/TR/html4/strict.dtd">
<HTML style="overflow:auto;">
<HEAD>
<meta name="generator" content="JDiff v1.1.0">
<!-- Generated by the JDiff Javadoc doclet -->
<!-- (http://www.jdiff.org) -->
<meta name="description" content="JDiff is a Javadoc doclet which generates an HTML report of all the packages, classes, constructors, methods, and fields which have been removed, added or changed in any way, including their documentation, when two APIs are compared.">
<meta name="keywords" content="diff, jdiff, javadiff, java diff, java difference, API difference, difference between two APIs, API diff, Javadoc, doclet">
<TITLE>
android.media.session.MediaSession
</TITLE>
<link href="../../../../assets/android-developer-docs.css" rel="stylesheet" type="text/css" />
<link href="../stylesheet-jdiff.css" rel="stylesheet" type="text/css" />
<noscript>
<style type="text/css">
body{overflow:auto;}
#body-content{position:relative; top:0;}
#doc-content{overflow:visible;border-left:3px solid #666;}
#side-nav{padding:0;}
#side-nav .toggle-list ul {display:block;}
#resize-packages-nav{border-bottom:3px solid #666;}
</style>
</noscript>
<style type="text/css">
</style>
</HEAD>
<BODY>
<!-- Start of nav bar -->
<a name="top"></a>
<div id="header" style="margin-bottom:0;padding-bottom:0;">
<div id="headerLeft">
<a href="../../../../index.html" tabindex="-1" target="_top"><img src="../../../../assets/images/bg_logo.png" alt="Android Developers" /></a>
</div>
  <div id="headerRight">
  <div id="headerLinks">
<!-- <img src="/assets/images/icon_world.jpg" alt="" /> -->
<span class="text">
<!-- &nbsp;<a href="#">English</a> | -->
<nobr><a href="//developer.android.com" target="_top">Android Developers</a> | <a href="//www.android.com" target="_top">Android.com</a></nobr>
</span>
</div>
  <div class="and-diff-id" style="margin-top:6px;margin-right:8px;">
    <table class="diffspectable">
      <tr>
        <td colspan="2" class="diffspechead">API Diff Specification</td>
      </tr>
      <tr>
        <td class="diffspec" style="padding-top:.25em">To Level:</td>
        <td class="diffvaluenew" style="padding-top:.25em">21</td>
      </tr>
      <tr>
        <td class="diffspec">From Level:</td>
        <td class="diffvalueold">l-preview</td>
      </tr>
      <tr>
        <td class="diffspec">Generated</td>
        <td class="diffvalue">2014.10.15 14:58</td>
      </tr>
    </table>
    </div><!-- End and-diff-id -->
  <div class="and-diff-id" style="margin-right:8px;">
    <table class="diffspectable">
      <tr>
        <td class="diffspec" colspan="2"><a href="jdiff_statistics.html">Statistics</a>
      </tr>
    </table>
  </div> <!-- End and-diff-id -->
  </div> <!-- End headerRight -->
  </div> <!-- End header -->
<div id="body-content" xstyle="padding:12px;padding-right:18px;">
<div id="doc-content" style="position:relative;">
<div id="mainBodyFluid">
<H2>
Class android.media.session.<A HREF="../../../../reference/android/media/session/MediaSession.html" target="_top"><font size="+2"><code>MediaSession</code></font></A>
</H2>
<a NAME="constructors"></a>
<p>
<a NAME="Added"></a>
<TABLE summary="Added Constructors" WIDTH="100%">
<TR>
  <TH VALIGN="TOP" COLSPAN=2>Added Constructors</FONT></TD>
</TH>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.ctor_added(android.content.Context, java.lang.String)"></A>
  <nobr><A HREF="../../../../reference/android/media/session/MediaSession.html#MediaSession(android.content.Context, java.lang.String)" target="_top"><code>MediaSession</code></A>(<code>Context,</nobr> String<nobr><nobr></code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<a NAME="methods"></a>
<p>
<a NAME="Removed"></a>
<TABLE summary="Removed Methods" WIDTH="100%">
<TR>
  <TH VALIGN="TOP" COLSPAN=2>Removed Methods</FONT></TD>
</TH>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.addCallback_removed(android.media.session.MediaSession.Callback)"></A>
  <nobr><code>void</code>&nbsp;addCallback(<code>Callback</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.addCallback_removed(android.media.session.MediaSession.Callback, android.os.Handler)"></A>
  <nobr><code>void</code>&nbsp;addCallback(<code>Callback,</nobr> Handler<nobr><nobr></code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.addTransportControlsCallback_removed(android.media.session.MediaSession.TransportControlsCallback)"></A>
  <nobr><code>void</code>&nbsp;addTransportControlsCallback(<code>TransportControlsCallback</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.addTransportControlsCallback_removed(android.media.session.MediaSession.TransportControlsCallback, android.os.Handler)"></A>
  <nobr><code>void</code>&nbsp;addTransportControlsCallback(<code>TransportControlsCallback,</nobr> Handler<nobr><nobr></code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.removeCallback_removed(android.media.session.MediaSession.Callback)"></A>
  <nobr><code>void</code>&nbsp;removeCallback(<code>Callback</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.removeTransportControlsCallback_removed(android.media.session.MediaSession.TransportControlsCallback)"></A>
  <nobr><code>void</code>&nbsp;removeTransportControlsCallback(<code>TransportControlsCallback</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setLaunchPendingIntent_removed(android.app.PendingIntent)"></A>
  <nobr><code>void</code>&nbsp;setLaunchPendingIntent(<code>PendingIntent</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<p>
<a NAME="Added"></a>
<TABLE summary="Added Methods" WIDTH="100%">
<TR>
  <TH VALIGN="TOP" COLSPAN=2>Added Methods</FONT></TD>
</TH>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.getController_added()"></A>
  <nobr><code>MediaController</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#getController()" target="_top"><code>getController</code></A>()</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setCallback_added(android.media.session.MediaSession.Callback)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setCallback(android.media.session.MediaSession.Callback)" target="_top"><code>setCallback</code></A>(<code>Callback</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setCallback_added(android.media.session.MediaSession.Callback, android.os.Handler)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setCallback(android.media.session.MediaSession.Callback, android.os.Handler)" target="_top"><code>setCallback</code></A>(<code>Callback,</nobr> Handler<nobr><nobr></code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setExtras_added(android.os.Bundle)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setExtras(android.os.Bundle)" target="_top"><code>setExtras</code></A>(<code>Bundle</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setMediaButtonReceiver_added(android.app.PendingIntent)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setMediaButtonReceiver(android.app.PendingIntent)" target="_top"><code>setMediaButtonReceiver</code></A>(<code>PendingIntent</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setQueue_added(java.util.List<android.media.session.MediaSession.QueueItem>)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setQueue(java.util.List<android.media.session.MediaSession.QueueItem>)" target="_top"><code>setQueue</code></A>(<code>List&lt;QueueItem&gt;</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setQueueTitle_added(java.lang.CharSequence)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setQueueTitle(java.lang.CharSequence)" target="_top"><code>setQueueTitle</code></A>(<code>CharSequence</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setSessionActivity_added(android.app.PendingIntent)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setSessionActivity(android.app.PendingIntent)" target="_top"><code>setSessionActivity</code></A>(<code>PendingIntent</code>)</nobr>
  </TD>
  <TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<p>
<a NAME="Changed"></a>
<TABLE summary="Changed Methods" WIDTH="100%">
<TR>
  <TH VALIGN="TOP" COLSPAN=3>Changed Methods</FONT></TD>
</TH>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.getSessionToken_changed()"></A>
  <nobr><code>Token</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#getSessionToken()" target="_top"><code>getSessionToken</code></A>()  </nobr>
  </TD>
  <TD VALIGN="TOP" WIDTH="30%">
Change in return type from <code>MediaSessionToken</code> to <code>Token</code>.<br>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setPlaybackToLocal_changed(android.media.AudioAttributes)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setPlaybackToLocal(android.media.AudioAttributes)" target="_top"><code>setPlaybackToLocal</code></A>(<code>AudioAttributes</code>)  </nobr>
  </TD>
  <TD VALIGN="TOP" WIDTH="30%">
Change in signature from <code>int</code> to <code>AudioAttributes</code>.<br>
  </TD>
  <TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="#FFFFFF" CLASS="TableRowColor">
  <TD VALIGN="TOP" WIDTH="25%">
  <A NAME="android.media.session.MediaSession.setPlaybackToRemote_changed(android.media.VolumeProvider)"></A>
  <nobr><code>void</code>&nbsp;<A HREF="../../../../reference/android/media/session/MediaSession.html#setPlaybackToRemote(android.media.VolumeProvider)" target="_top"><code>setPlaybackToRemote</code></A>(<code>VolumeProvider</code>)  </nobr>
  </TD>
  <TD VALIGN="TOP" WIDTH="30%">
Change in signature from <code>RemoteVolumeProvider</code> to <code>VolumeProvider</code>.<br>
  </TD>
  <TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<a NAME="fields"></a>
      </div>	
      <div id="footer">
        <div id="copyright">
        Except as noted, this content is licensed under 
        <a href="//creativecommons.org/licenses/by/2.5/"> Creative Commons Attribution 2.5</a>.
        For details and restrictions, see the <a href="/license.html">Content License</a>.
        </div>
      <div id="footerlinks">
      <p>
        <a href="//www.android.com/terms.html">Site Terms of Service</a> -
        <a href="//www.android.com/privacy.html">Privacy Policy</a> -
        <a href="//www.android.com/branding.html">Brand Guidelines</a>
      </p>
    </div>
    </div> <!-- end footer -->
    </div><!-- end doc-content -->
    </div> <!-- end body-content --> 
<script src="//www.google-analytics.com/ga.js" type="text/javascript">
</script>
<script type="text/javascript">
  try {
    var pageTracker = _gat._getTracker("UA-5831155-1");
    pageTracker._setAllowAnchor(true);
    pageTracker._initData();
    pageTracker._trackPageview();
  } catch(e) {}
</script>
</BODY>
</HTML>
