/**@class android.media.session.PlaybackState.Builder @extends java.lang.Object Builder for {@link android.media.session.PlaybackState} objects. */ var Builder = { /**Set the current state of playback. <p> The position must be in ms and indicates the current playback position within the item. If the position is unknown use {@link #PLAYBACK_POSITION_UNKNOWN}. When not using an unknown position the time at which the position was updated must be provided. It is okay to use {@link SystemClock#elapsedRealtime()} if the current position was just retrieved. <p> The speed is a multiple of normal playback and should be 0 when paused and negative when rewinding. Normal playback speed is 1.0. <p> The state must be one of the following: <ul> <li> {@link android.media.session.PlaybackState#STATE_NONE}</li> <li> {@link android.media.session.PlaybackState#STATE_STOPPED}</li> <li> {@link android.media.session.PlaybackState#STATE_PLAYING}</li> <li> {@link android.media.session.PlaybackState#STATE_PAUSED}</li> <li> {@link android.media.session.PlaybackState#STATE_FAST_FORWARDING}</li> <li> {@link android.media.session.PlaybackState#STATE_REWINDING}</li> <li> {@link android.media.session.PlaybackState#STATE_BUFFERING}</li> <li> {@link android.media.session.PlaybackState#STATE_ERROR}</li> <li> {@link android.media.session.PlaybackState#STATE_CONNECTING}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_NEXT}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li> </ul> @param {Number} state The current state of playback. @param {Number} position The position in the current item in ms. @param {Number} playbackSpeed The current speed of playback as a multiple of normal playback. @param {Number} updateTime The time in the {@link SystemClock#elapsedRealtime} timebase that the position was updated at. @return {Object {android.media.session.PlaybackState.Builder}} this */ setState : function( ) {}, /**Set the current state of playback. <p> The position must be in ms and indicates the current playback position within the item. If the position is unknown use {@link #PLAYBACK_POSITION_UNKNOWN}. The update time will be set to the current {@link SystemClock#elapsedRealtime()}. <p> The speed is a multiple of normal playback and should be 0 when paused and negative when rewinding. Normal playback speed is 1.0. <p> The state must be one of the following: <ul> <li> {@link android.media.session.PlaybackState#STATE_NONE}</li> <li> {@link android.media.session.PlaybackState#STATE_STOPPED}</li> <li> {@link android.media.session.PlaybackState#STATE_PLAYING}</li> <li> {@link android.media.session.PlaybackState#STATE_PAUSED}</li> <li> {@link android.media.session.PlaybackState#STATE_FAST_FORWARDING}</li> <li> {@link android.media.session.PlaybackState#STATE_REWINDING}</li> <li> {@link android.media.session.PlaybackState#STATE_BUFFERING}</li> <li> {@link android.media.session.PlaybackState#STATE_ERROR}</li> <li> {@link android.media.session.PlaybackState#STATE_CONNECTING}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_PREVIOUS}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_NEXT}</li> <li> {@link android.media.session.PlaybackState#STATE_SKIPPING_TO_QUEUE_ITEM}</li> </ul> @param {Number} state The current state of playback. @param {Number} position The position in the current item in ms. @param {Number} playbackSpeed The current speed of playback as a multiple of normal playback. @return {Object {android.media.session.PlaybackState.Builder}} this */ setState : function( ) {}, /**Set the current actions available on this session. This should use a bitmask of possible actions. <ul> <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_PREVIOUS}</li> <li> {@link android.media.session.PlaybackState#ACTION_REWIND}</li> <li> {@link android.media.session.PlaybackState#ACTION_PLAY}</li> <li> {@link android.media.session.PlaybackState#ACTION_PAUSE}</li> <li> {@link android.media.session.PlaybackState#ACTION_STOP}</li> <li> {@link android.media.session.PlaybackState#ACTION_FAST_FORWARD}</li> <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_NEXT}</li> <li> {@link android.media.session.PlaybackState#ACTION_SEEK_TO}</li> <li> {@link android.media.session.PlaybackState#ACTION_SET_RATING}</li> <li> {@link android.media.session.PlaybackState#ACTION_PLAY_PAUSE}</li> <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_MEDIA_ID}</li> <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_SEARCH}</li> <li> {@link android.media.session.PlaybackState#ACTION_SKIP_TO_QUEUE_ITEM}</li> <li> {@link android.media.session.PlaybackState#ACTION_PLAY_FROM_URI}</li> <li> {@link android.media.session.PlaybackState#ACTION_PREPARE}</li> <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_MEDIA_ID}</li> <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_SEARCH}</li> <li> {@link android.media.session.PlaybackState#ACTION_PREPARE_FROM_URI}</li> </ul> @param {Number} actions The set of actions allowed. @return {Object {android.media.session.PlaybackState.Builder}} this */ setActions : function( ) {}, /**Add a custom action to the playback state. Actions can be used to expose additional functionality to {@link android.media.session.MediaController android.media.session.MediaControllers} beyond what is offered by the standard transport controls. <p> e.g. start a radio station based on the current item or skip ahead by 30 seconds. @param {String} action An identifier for this action. It can be sent back to the {@link MediaSession} through {@link MediaController.TransportControls#sendCustomAction(String, Bundle)}. @param {String} name The display name for the action. If text is shown with the action or used for accessibility, this is what should be used. @param {Number} icon The resource action of the icon that should be displayed for the action. The resource should be in the package of the {@link MediaSession}. @return {Object {android.media.session.PlaybackState.Builder}} this */ addCustomAction : function( ) {}, /**Add a custom action to the playback state. Actions can be used to expose additional functionality to {@link android.media.session.MediaController android.media.session.MediaControllers} beyond what is offered by the standard transport controls. <p> An example of an action would be to start a radio station based on the current item or to skip ahead by 30 seconds. @param {Object {PlaybackState.CustomAction}} customAction The custom action to add to the {@link PlaybackState}. @return {Object {android.media.session.PlaybackState.Builder}} this */ addCustomAction : function( ) {}, /**Set the current buffered position in ms. This is the farthest playback point that can be reached from the current position using only buffered content. @param {Number} bufferedPosition The position in ms that playback is buffered to. @return {Object {android.media.session.PlaybackState.Builder}} this */ setBufferedPosition : function( ) {}, /**Set the active item in the play queue by specifying its id. The default value is {@link android.media.session.MediaSession.QueueItem#UNKNOWN_ID} @param {Number} id The id of the active item. @return {Object {android.media.session.PlaybackState.Builder}} this */ setActiveQueueItemId : function( ) {}, /**Set a user readable error message. This should be set when the state is {@link android.media.session.PlaybackState#STATE_ERROR}. @param {Object {CharSequence}} error The error message for display to the user. @return {Object {android.media.session.PlaybackState.Builder}} this */ setErrorMessage : function( ) {}, /**Set any custom extras to be included with the playback state. @param {Object {Bundle}} extras The extras to include. @return {Object {android.media.session.PlaybackState.Builder}} this */ setExtras : function( ) {}, /**Build and return the {@link android.media.session.PlaybackState} instance with these values. @return {Object {android.media.session.PlaybackState}} A new state instance. */ build : function( ) {}, };