public class android.media.RemoteControlClient
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.media.RemoteControlClient
super_class: java.lang.Object
{
private static final java.lang.String TAG;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "RemoteControlClient"
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int PLAYSTATE_STOPPED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int PLAYSTATE_PAUSED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int PLAYSTATE_PLAYING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int PLAYSTATE_FAST_FORWARDING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int PLAYSTATE_REWINDING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 5
public static final int PLAYSTATE_SKIPPING_FORWARDS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 6
public static final int PLAYSTATE_SKIPPING_BACKWARDS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 7
public static final int PLAYSTATE_BUFFERING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 8
public static final int PLAYSTATE_ERROR;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 9
public static final int PLAYSTATE_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int PLAYBACK_TYPE_LOCAL;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int PLAYBACK_TYPE_REMOTE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int PLAYBACK_TYPE_MIN;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int PLAYBACK_TYPE_MAX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int PLAYBACK_VOLUME_FIXED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int PLAYBACK_VOLUME_VARIABLE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int PLAYBACKINFO_INVALID_VALUE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -2147483648
public static final long PLAYBACK_POSITION_INVALID;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
public static final long PLAYBACK_POSITION_ALWAYS_UNKNOWN;
descriptor: J
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -9216204211029966080
public static final float PLAYBACK_SPEED_1X;
descriptor: F
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1.0
public static final int PLAYBACKINFO_PLAYBACK_TYPE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int PLAYBACKINFO_VOLUME;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int PLAYBACKINFO_VOLUME_MAX;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int PLAYBACKINFO_VOLUME_HANDLING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int PLAYBACKINFO_USES_STREAM;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 5
public static final int FLAG_KEY_MEDIA_PREVIOUS;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int FLAG_KEY_MEDIA_REWIND;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int FLAG_KEY_MEDIA_PLAY;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int FLAG_KEY_MEDIA_PLAY_PAUSE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 8
public static final int FLAG_KEY_MEDIA_PAUSE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 16
public static final int FLAG_KEY_MEDIA_STOP;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 32
public static final int FLAG_KEY_MEDIA_FAST_FORWARD;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 64
public static final int FLAG_KEY_MEDIA_NEXT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 128
public static final int FLAG_KEY_MEDIA_POSITION_UPDATE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 256
public static final int FLAG_KEY_MEDIA_RATING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 512
public static final int FLAGS_KEY_MEDIA_NONE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int FLAG_INFORMATION_REQUEST_METADATA;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int FLAG_INFORMATION_REQUEST_KEY_MEDIA;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int FLAG_INFORMATION_REQUEST_PLAYSTATE;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 4
public static final int FLAG_INFORMATION_REQUEST_ALBUM_ART;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private android.media.session.MediaSession mSession;
descriptor: Landroid/media/session/MediaSession;
flags: (0x0002) ACC_PRIVATE
public static int MEDIA_POSITION_READABLE;
descriptor: I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
public static int MEDIA_POSITION_WRITABLE;
descriptor: I
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
public static final int DEFAULT_PLAYBACK_VOLUME_HANDLING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int DEFAULT_PLAYBACK_VOLUME;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 15
private final java.lang.Object mCacheLock;
descriptor: Ljava/lang/Object;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int mPlaybackState;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private long mPlaybackStateChangeTimeMs;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long mPlaybackPositionMs;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private float mPlaybackSpeed;
descriptor: F
flags: (0x0002) ACC_PRIVATE
private android.graphics.Bitmap mOriginalArtwork;
descriptor: Landroid/graphics/Bitmap;
flags: (0x0002) ACC_PRIVATE
private int mTransportControlFlags;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private android.os.Bundle mMetadata;
descriptor: Landroid/os/Bundle;
flags: (0x0002) ACC_PRIVATE
private android.media.RemoteControlClient$OnPlaybackPositionUpdateListener mPositionUpdateListener;
descriptor: Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;
flags: (0x0002) ACC_PRIVATE
private android.media.RemoteControlClient$OnGetPlaybackPositionListener mPositionProvider;
descriptor: Landroid/media/RemoteControlClient$OnGetPlaybackPositionListener;
flags: (0x0002) ACC_PRIVATE
private android.media.RemoteControlClient$OnMetadataUpdateListener mMetadataUpdateListener;
descriptor: Landroid/media/RemoteControlClient$OnMetadataUpdateListener;
flags: (0x0002) ACC_PRIVATE
private int mCurrentClientGenId;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final android.app.PendingIntent mRcMediaIntent;
descriptor: Landroid/app/PendingIntent;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private boolean mNeedsPositionSync;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private android.media.session.PlaybackState mSessionPlaybackState;
descriptor: Landroid/media/session/PlaybackState;
flags: (0x0002) ACC_PRIVATE
private android.media.MediaMetadata mMediaMetadata;
descriptor: Landroid/media/MediaMetadata;
flags: (0x0002) ACC_PRIVATE
public static final int RCSE_ID_UNREGISTERED;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private android.media.session.MediaSession$Callback mTransportListener;
descriptor: Landroid/media/session/MediaSession$Callback;
flags: (0x0002) ACC_PRIVATE
private static final long POSITION_REFRESH_PERIOD_PLAYING_MS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 15000
private static final long POSITION_REFRESH_PERIOD_MIN_MS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2000
private static final long POSITION_DRIFT_MAX_MS;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 500
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_1
putstatic android.media.RemoteControlClient.MEDIA_POSITION_READABLE:I
1: iconst_2
putstatic android.media.RemoteControlClient.MEDIA_POSITION_WRITABLE:I
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(android.app.PendingIntent);
descriptor: (Landroid/app/PendingIntent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
2: aload 0
iconst_0
putfield android.media.RemoteControlClient.mPlaybackState:I
3: aload 0
lconst_0
putfield android.media.RemoteControlClient.mPlaybackStateChangeTimeMs:J
4: aload 0
ldc -1
putfield android.media.RemoteControlClient.mPlaybackPositionMs:J
5: aload 0
fconst_1
putfield android.media.RemoteControlClient.mPlaybackSpeed:F
6: aload 0
iconst_0
putfield android.media.RemoteControlClient.mTransportControlFlags:I
7: aload 0
new android.os.Bundle
dup
invokespecial android.os.Bundle.<init>:()V
putfield android.media.RemoteControlClient.mMetadata:Landroid/os/Bundle;
8: aload 0
iconst_m1
putfield android.media.RemoteControlClient.mCurrentClientGenId:I
9: aload 0
iconst_0
putfield android.media.RemoteControlClient.mNeedsPositionSync:Z
10: aload 0
aconst_null
putfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
11: aload 0
new android.media.RemoteControlClient$1
dup
aload 0
invokespecial android.media.RemoteControlClient$1.<init>:(Landroid/media/RemoteControlClient;)V
putfield android.media.RemoteControlClient.mTransportListener:Landroid/media/session/MediaSession$Callback;
12: aload 0
aload 1
putfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/media/RemoteControlClient;
0 14 1 mediaButtonIntent Landroid/app/PendingIntent;
MethodParameters:
Name Flags
mediaButtonIntent
public void <init>(android.app.PendingIntent, android.os.Looper);
descriptor: (Landroid/app/PendingIntent;Landroid/os/Looper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
2: aload 0
iconst_0
putfield android.media.RemoteControlClient.mPlaybackState:I
3: aload 0
lconst_0
putfield android.media.RemoteControlClient.mPlaybackStateChangeTimeMs:J
4: aload 0
ldc -1
putfield android.media.RemoteControlClient.mPlaybackPositionMs:J
5: aload 0
fconst_1
putfield android.media.RemoteControlClient.mPlaybackSpeed:F
6: aload 0
iconst_0
putfield android.media.RemoteControlClient.mTransportControlFlags:I
7: aload 0
new android.os.Bundle
dup
invokespecial android.os.Bundle.<init>:()V
putfield android.media.RemoteControlClient.mMetadata:Landroid/os/Bundle;
8: aload 0
iconst_m1
putfield android.media.RemoteControlClient.mCurrentClientGenId:I
9: aload 0
iconst_0
putfield android.media.RemoteControlClient.mNeedsPositionSync:Z
10: aload 0
aconst_null
putfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
11: aload 0
new android.media.RemoteControlClient$1
dup
aload 0
invokespecial android.media.RemoteControlClient$1.<init>:(Landroid/media/RemoteControlClient;)V
putfield android.media.RemoteControlClient.mTransportListener:Landroid/media/session/MediaSession$Callback;
12: aload 0
aload 1
putfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
13: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/media/RemoteControlClient;
0 14 1 mediaButtonIntent Landroid/app/PendingIntent;
0 14 2 looper Landroid/os/Looper;
MethodParameters:
Name Flags
mediaButtonIntent
looper
public void registerWithSession(android.media.session.MediaSessionLegacyHelper);
descriptor: (Landroid/media/session/MediaSessionLegacyHelper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
aload 0
getfield android.media.RemoteControlClient.mTransportListener:Landroid/media/session/MediaSession$Callback;
invokevirtual android.media.session.MediaSessionLegacyHelper.addRccListener:(Landroid/app/PendingIntent;Landroid/media/session/MediaSession$Callback;)V
1: aload 0
aload 1
aload 0
getfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
invokevirtual android.media.session.MediaSessionLegacyHelper.getSession:(Landroid/app/PendingIntent;)Landroid/media/session/MediaSession;
putfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
2: aload 0
aload 0
getfield android.media.RemoteControlClient.mTransportControlFlags:I
invokevirtual android.media.RemoteControlClient.setTransportControlFlags:(I)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/RemoteControlClient;
0 4 1 helper Landroid/media/session/MediaSessionLegacyHelper;
MethodParameters:
Name Flags
helper
public void unregisterWithSession(android.media.session.MediaSessionLegacyHelper);
descriptor: (Landroid/media/session/MediaSessionLegacyHelper;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
invokevirtual android.media.session.MediaSessionLegacyHelper.removeRccListener:(Landroid/app/PendingIntent;)V
1: aload 0
aconst_null
putfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/media/RemoteControlClient;
0 3 1 helper Landroid/media/session/MediaSessionLegacyHelper;
MethodParameters:
Name Flags
helper
public android.media.session.MediaSession getMediaSession();
descriptor: ()Landroid/media/session/MediaSession;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/RemoteControlClient;
public android.media.RemoteControlClient$MetadataEditor editMetadata(boolean);
descriptor: (Z)Landroid/media/RemoteControlClient$MetadataEditor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new android.media.RemoteControlClient$MetadataEditor
dup
aload 0
invokespecial android.media.RemoteControlClient$MetadataEditor.<init>:(Landroid/media/RemoteControlClient;)V
astore 2
start local 2 1: iload 1
ifeq 8
2: aload 2
new android.os.Bundle
dup
invokespecial android.os.Bundle.<init>:()V
putfield android.media.RemoteControlClient$MetadataEditor.mEditorMetadata:Landroid/os/Bundle;
3: aload 2
aconst_null
putfield android.media.RemoteControlClient$MetadataEditor.mEditorArtwork:Landroid/graphics/Bitmap;
4: aload 2
iconst_1
putfield android.media.RemoteControlClient$MetadataEditor.mMetadataChanged:Z
5: aload 2
iconst_1
putfield android.media.RemoteControlClient$MetadataEditor.mArtworkChanged:Z
6: aload 2
lconst_0
putfield android.media.RemoteControlClient$MetadataEditor.mEditableKeys:J
7: goto 12
8: StackMap locals: android.media.RemoteControlClient$MetadataEditor
StackMap stack:
aload 2
new android.os.Bundle
dup
aload 0
getfield android.media.RemoteControlClient.mMetadata:Landroid/os/Bundle;
invokespecial android.os.Bundle.<init>:(Landroid/os/Bundle;)V
putfield android.media.RemoteControlClient$MetadataEditor.mEditorMetadata:Landroid/os/Bundle;
9: aload 2
aload 0
getfield android.media.RemoteControlClient.mOriginalArtwork:Landroid/graphics/Bitmap;
putfield android.media.RemoteControlClient$MetadataEditor.mEditorArtwork:Landroid/graphics/Bitmap;
10: aload 2
iconst_0
putfield android.media.RemoteControlClient$MetadataEditor.mMetadataChanged:Z
11: aload 2
iconst_0
putfield android.media.RemoteControlClient$MetadataEditor.mArtworkChanged:Z
12: StackMap locals:
StackMap stack:
iload 1
ifne 13
aload 0
getfield android.media.RemoteControlClient.mMediaMetadata:Landroid/media/MediaMetadata;
ifnonnull 15
13: StackMap locals:
StackMap stack:
aload 2
new android.media.MediaMetadata$Builder
dup
invokespecial android.media.MediaMetadata$Builder.<init>:()V
putfield android.media.RemoteControlClient$MetadataEditor.mMetadataBuilder:Landroid/media/MediaMetadata$Builder;
14: goto 16
15: StackMap locals:
StackMap stack:
aload 2
new android.media.MediaMetadata$Builder
dup
aload 0
getfield android.media.RemoteControlClient.mMediaMetadata:Landroid/media/MediaMetadata;
invokespecial android.media.MediaMetadata$Builder.<init>:(Landroid/media/MediaMetadata;)V
putfield android.media.RemoteControlClient$MetadataEditor.mMetadataBuilder:Landroid/media/MediaMetadata$Builder;
16: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/media/RemoteControlClient;
0 17 1 startEmpty Z
1 17 2 editor Landroid/media/RemoteControlClient$MetadataEditor;
MethodParameters:
Name Flags
startEmpty
public void setPlaybackState(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
ldc -9216204211029966080
fconst_1
1: iconst_0
2: invokevirtual android.media.RemoteControlClient.setPlaybackStateInt:(IJFZ)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/media/RemoteControlClient;
0 4 1 state I
MethodParameters:
Name Flags
state
public void setPlaybackState(int, long, float);
descriptor: (IJF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 4 0: aload 0
iload 1
lload 2
fload 4
iconst_1
invokevirtual android.media.RemoteControlClient.setPlaybackStateInt:(IJFZ)V
1: return
end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/media/RemoteControlClient;
0 2 1 state I
0 2 2 timeInMs J
0 2 4 playbackSpeed F
MethodParameters:
Name Flags
state
timeInMs
playbackSpeed
private void setPlaybackStateInt(int, long, float, boolean);
descriptor: (IJFZ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 4 start local 5 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 6
monitorenter
1: aload 0
getfield android.media.RemoteControlClient.mPlaybackState:I
iload 1
if_icmpne 3
aload 0
getfield android.media.RemoteControlClient.mPlaybackPositionMs:J
lload 2
lcmp
ifne 3
2: aload 0
getfield android.media.RemoteControlClient.mPlaybackSpeed:F
fload 4
fcmpl
ifeq 23
3: StackMap locals: java.lang.Object
StackMap stack:
aload 0
iload 1
putfield android.media.RemoteControlClient.mPlaybackState:I
4: iload 5
ifeq 10
5: lload 2
lconst_0
lcmp
ifge 8
6: aload 0
ldc -1
putfield android.media.RemoteControlClient.mPlaybackPositionMs:J
7: goto 11
8: StackMap locals:
StackMap stack:
aload 0
lload 2
putfield android.media.RemoteControlClient.mPlaybackPositionMs:J
9: goto 11
10: StackMap locals:
StackMap stack:
aload 0
ldc -9216204211029966080
putfield android.media.RemoteControlClient.mPlaybackPositionMs:J
11: StackMap locals:
StackMap stack:
aload 0
fload 4
putfield android.media.RemoteControlClient.mPlaybackSpeed:F
12: aload 0
invokestatic android.os.SystemClock.elapsedRealtime:()J
putfield android.media.RemoteControlClient.mPlaybackStateChangeTimeMs:J
13: aload 0
getfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
ifnull 23
14: iload 1
invokestatic android.media.session.PlaybackState.getStateFromRccState:(I)I
istore 7
start local 7 15: iload 5
ifeq 16
aload 0
getfield android.media.RemoteControlClient.mPlaybackPositionMs:J
goto 17
16: StackMap locals: int
StackMap stack:
ldc -1
17: StackMap locals:
StackMap stack: long
lstore 8
start local 8 18: new android.media.session.PlaybackState$Builder
dup
aload 0
getfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
invokespecial android.media.session.PlaybackState$Builder.<init>:(Landroid/media/session/PlaybackState;)V
astore 10
start local 10 19: aload 10
iload 7
lload 8
fload 4
invokestatic android.os.SystemClock.elapsedRealtime:()J
invokevirtual android.media.session.PlaybackState$Builder.setState:(IJFJ)Landroid/media/session/PlaybackState$Builder;
pop
20: aload 10
aconst_null
invokevirtual android.media.session.PlaybackState$Builder.setErrorMessage:(Ljava/lang/CharSequence;)Landroid/media/session/PlaybackState$Builder;
pop
21: aload 0
aload 10
invokevirtual android.media.session.PlaybackState$Builder.build:()Landroid/media/session/PlaybackState;
putfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
22: aload 0
getfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
aload 0
getfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
invokevirtual android.media.session.MediaSession.setPlaybackState:(Landroid/media/session/PlaybackState;)V
end local 10 end local 8 end local 7 23: StackMap locals:
StackMap stack:
aload 6
monitorexit
24: goto 27
StackMap locals:
StackMap stack: java.lang.Throwable
25: aload 6
monitorexit
26: athrow
27: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Landroid/media/RemoteControlClient;
0 28 1 state I
0 28 2 timeInMs J
0 28 4 playbackSpeed F
0 28 5 hasPosition Z
15 23 7 pbState I
18 23 8 position J
19 23 10 bob Landroid/media/session/PlaybackState$Builder;
Exception table:
from to target type
1 24 25 any
25 26 25 any
MethodParameters:
Name Flags
state
timeInMs
playbackSpeed
hasPosition
public void setTransportControlFlags(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
iload 1
putfield android.media.RemoteControlClient.mTransportControlFlags:I
2: aload 0
getfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
ifnull 9
3: new android.media.session.PlaybackState$Builder
dup
aload 0
getfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
invokespecial android.media.session.PlaybackState$Builder.<init>:(Landroid/media/session/PlaybackState;)V
astore 3
start local 3 4: aload 3
5: iload 1
invokestatic android.media.session.PlaybackState.getActionsFromRccControlFlags:(I)J
6: invokevirtual android.media.session.PlaybackState$Builder.setActions:(J)Landroid/media/session/PlaybackState$Builder;
pop
7: aload 0
aload 3
invokevirtual android.media.session.PlaybackState$Builder.build:()Landroid/media/session/PlaybackState;
putfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
8: aload 0
getfield android.media.RemoteControlClient.mSession:Landroid/media/session/MediaSession;
aload 0
getfield android.media.RemoteControlClient.mSessionPlaybackState:Landroid/media/session/PlaybackState;
invokevirtual android.media.session.MediaSession.setPlaybackState:(Landroid/media/session/PlaybackState;)V
end local 3 9: StackMap locals: java.lang.Object
StackMap stack:
aload 2
monitorexit
10: goto 13
StackMap locals:
StackMap stack: java.lang.Throwable
11: aload 2
monitorexit
12: athrow
13: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Landroid/media/RemoteControlClient;
0 14 1 transportControlFlags I
4 9 3 bob Landroid/media/session/PlaybackState$Builder;
Exception table:
from to target type
1 10 11 any
11 12 11 any
MethodParameters:
Name Flags
transportControlFlags
public void setMetadataUpdateListener(android.media.RemoteControlClient$OnMetadataUpdateListener);
descriptor: (Landroid/media/RemoteControlClient$OnMetadataUpdateListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 1
putfield android.media.RemoteControlClient.mMetadataUpdateListener:Landroid/media/RemoteControlClient$OnMetadataUpdateListener;
2: aload 2
monitorexit
3: goto 6
StackMap locals: android.media.RemoteControlClient android.media.RemoteControlClient$OnMetadataUpdateListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/media/RemoteControlClient;
0 7 1 l Landroid/media/RemoteControlClient$OnMetadataUpdateListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
l
public void setPlaybackPositionUpdateListener(android.media.RemoteControlClient$OnPlaybackPositionUpdateListener);
descriptor: (Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 1
putfield android.media.RemoteControlClient.mPositionUpdateListener:Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;
2: aload 2
monitorexit
3: goto 6
StackMap locals: android.media.RemoteControlClient android.media.RemoteControlClient$OnPlaybackPositionUpdateListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/media/RemoteControlClient;
0 7 1 l Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
l
public void setOnGetPlaybackPositionListener(android.media.RemoteControlClient$OnGetPlaybackPositionListener);
descriptor: (Landroid/media/RemoteControlClient$OnGetPlaybackPositionListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 2
monitorenter
1: aload 0
aload 1
putfield android.media.RemoteControlClient.mPositionProvider:Landroid/media/RemoteControlClient$OnGetPlaybackPositionListener;
2: aload 2
monitorexit
3: goto 6
StackMap locals: android.media.RemoteControlClient android.media.RemoteControlClient$OnGetPlaybackPositionListener java.lang.Object
StackMap stack: java.lang.Throwable
4: aload 2
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/media/RemoteControlClient;
0 7 1 l Landroid/media/RemoteControlClient$OnGetPlaybackPositionListener;
Exception table:
from to target type
1 3 4 any
4 5 4 any
MethodParameters:
Name Flags
l
public android.app.PendingIntent getRcMediaIntent();
descriptor: ()Landroid/app/PendingIntent;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.media.RemoteControlClient.mRcMediaIntent:Landroid/app/PendingIntent;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/media/RemoteControlClient;
private void onSeekTo(int, long);
descriptor: (IJ)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield android.media.RemoteControlClient.mCurrentClientGenId:I
iload 1
if_icmpne 3
aload 0
getfield android.media.RemoteControlClient.mPositionUpdateListener:Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;
ifnull 3
2: aload 0
getfield android.media.RemoteControlClient.mPositionUpdateListener:Landroid/media/RemoteControlClient$OnPlaybackPositionUpdateListener;
lload 2
invokeinterface android.media.RemoteControlClient$OnPlaybackPositionUpdateListener.onPlaybackPositionUpdate:(J)V
3: StackMap locals: java.lang.Object
StackMap stack:
aload 4
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 4
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/media/RemoteControlClient;
0 8 1 generationId I
0 8 2 timeMs J
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
generationId
timeMs
private void onUpdateMetadata(int, int, java.lang.Object);
descriptor: (IILjava/lang/Object;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield android.media.RemoteControlClient.mCacheLock:Ljava/lang/Object;
dup
astore 4
monitorenter
1: aload 0
getfield android.media.RemoteControlClient.mCurrentClientGenId:I
iload 1
if_icmpne 3
aload 0
getfield android.media.RemoteControlClient.mMetadataUpdateListener:Landroid/media/RemoteControlClient$OnMetadataUpdateListener;
ifnull 3
2: aload 0
getfield android.media.RemoteControlClient.mMetadataUpdateListener:Landroid/media/RemoteControlClient$OnMetadataUpdateListener;
iload 2
aload 3
invokeinterface android.media.RemoteControlClient$OnMetadataUpdateListener.onMetadataUpdate:(ILjava/lang/Object;)V
3: StackMap locals: java.lang.Object
StackMap stack:
aload 4
monitorexit
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: aload 4
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/media/RemoteControlClient;
0 8 1 generationId I
0 8 2 key I
0 8 3 value Ljava/lang/Object;
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
generationId
key
value
static boolean playbackPositionShouldMove(int);
descriptor: (I)Z
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iload 0
tableswitch { // 1 - 9
1: 1
2: 1
3: 2
4: 2
5: 2
6: 1
7: 1
8: 1
9: 1
default: 2
}
1: StackMap locals:
StackMap stack:
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 playstate I
MethodParameters:
Name Flags
playstate
private static long getCheckPeriodFromSpeed(float);
descriptor: (F)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: fload 0
invokestatic java.lang.Math.abs:(F)F
fconst_1
fcmpg
ifgt 2
1: ldc 15000
lreturn
2: StackMap locals:
StackMap stack:
ldc 15000.0
fload 0
invokestatic java.lang.Math.abs:(F)F
fdiv
f2l
3: ldc 2000
4: invokestatic java.lang.Math.max:(JJ)J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 speed F
MethodParameters:
Name Flags
speed
}
SourceFile: "RemoteControlClient.java"
NestMembers:
android.media.RemoteControlClient$1 android.media.RemoteControlClient$MetadataEditor android.media.RemoteControlClient$OnGetPlaybackPositionListener android.media.RemoteControlClient$OnMetadataUpdateListener android.media.RemoteControlClient$OnPlaybackPositionUpdateListener
InnerClasses:
public final Builder = android.media.MediaMetadata$Builder of android.media.MediaMetadata
android.media.RemoteControlClient$1
public MetadataEditor = android.media.RemoteControlClient$MetadataEditor of android.media.RemoteControlClient
public abstract OnGetPlaybackPositionListener = android.media.RemoteControlClient$OnGetPlaybackPositionListener of android.media.RemoteControlClient
public abstract OnMetadataUpdateListener = android.media.RemoteControlClient$OnMetadataUpdateListener of android.media.RemoteControlClient
public abstract OnPlaybackPositionUpdateListener = android.media.RemoteControlClient$OnPlaybackPositionUpdateListener of android.media.RemoteControlClient
public abstract Callback = android.media.session.MediaSession$Callback of android.media.session.MediaSession
public final Builder = android.media.session.PlaybackState$Builder of android.media.session.PlaybackState
RuntimeVisibleAnnotations:
java.lang.Deprecated()