.class public Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21; .super Ljava/lang/Object; .source "MediaSessionCompat.java" # interfaces .implements Landroid/support/v4/media/session/MediaSessionCompat$c; # annotations .annotation build Landroidx/annotation/RequiresApi; value = 0x15 .end annotation .annotation system Ldalvik/annotation/EnclosingClass; value = Landroid/support/v4/media/session/MediaSessionCompat; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x9 name = "MediaSessionImplApi21" .end annotation .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21$ExtraSession; } .end annotation # instance fields .field public final a:Landroid/media/session/MediaSession; .field public final b:Landroid/support/v4/media/session/MediaSessionCompat$Token; .field public final c:Ljava/lang/Object; .field public d:Landroid/os/Bundle; .field public e:Z .field public final f:Landroid/os/RemoteCallbackList; .annotation system Ldalvik/annotation/Signature; value = { "Landroid/os/RemoteCallbackList<", "Landroid/support/v4/media/session/IMediaControllerCallback;", ">;" } .end annotation .end field .field public g:Landroid/support/v4/media/session/PlaybackStateCompat; .field public h:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;", ">;" } .end annotation .end field .field public i:Landroid/support/v4/media/MediaMetadataCompat; .field public j:I .field public k:Z .field public l:I .field public m:I .field public n:Landroid/support/v4/media/session/MediaSessionCompat$b; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .end field .field public o:Landroidx/media/e$b; .annotation build Landroidx/annotation/GuardedBy; value = "mLock" .end annotation .end field # direct methods .method public constructor (Landroid/content/Context;Ljava/lang/String;Lj3/d;Landroid/os/Bundle;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0, 0x0, 0x0 } names = { "context", "tag", "session2Token", "sessionInfo" } .end annotation .line 1 invoke-direct {p0}, Ljava/lang/Object;->()V .line 2 new-instance v0, Ljava/lang/Object; invoke-direct {v0}, Ljava/lang/Object;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; const/4 v0, 0x0 .line 3 iput-boolean v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->e:Z .line 4 new-instance v0, Landroid/os/RemoteCallbackList; invoke-direct {v0}, Landroid/os/RemoteCallbackList;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; .line 5 invoke-virtual {p0, p1, p2, p4}, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->s(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)Landroid/media/session/MediaSession; move-result-object p1 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; .line 6 new-instance p2, Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {p1}, Landroid/media/session/MediaSession;->getSessionToken()Landroid/media/session/MediaSession$Token; move-result-object p1 new-instance v0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21$ExtraSession; invoke-direct {v0, p0}, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21$ExtraSession;->(Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;)V invoke-direct {p2, p1, v0, p3}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->(Ljava/lang/Object;Landroid/support/v4/media/session/IMediaSession;Lj3/d;)V iput-object p2, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->b:Landroid/support/v4/media/session/MediaSessionCompat$Token; .line 7 iput-object p4, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->d:Landroid/os/Bundle; const/4 p1, 0x3 .line 8 invoke-virtual {p0, p1}, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->setFlags(I)V return-void .end method .method public constructor (Ljava/lang/Object;)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "mediaSession" } .end annotation .line 9 invoke-direct {p0}, Ljava/lang/Object;->()V .line 10 new-instance v0, Ljava/lang/Object; invoke-direct {v0}, Ljava/lang/Object;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; const/4 v0, 0x0 .line 11 iput-boolean v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->e:Z .line 12 new-instance v0, Landroid/os/RemoteCallbackList; invoke-direct {v0}, Landroid/os/RemoteCallbackList;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; .line 13 instance-of v0, p1, Landroid/media/session/MediaSession; if-eqz v0, :cond_0 .line 14 check-cast p1, Landroid/media/session/MediaSession; iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; .line 15 new-instance v0, Landroid/support/v4/media/session/MediaSessionCompat$Token; invoke-virtual {p1}, Landroid/media/session/MediaSession;->getSessionToken()Landroid/media/session/MediaSession$Token; move-result-object p1 new-instance v1, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21$ExtraSession; invoke-direct {v1, p0}, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21$ExtraSession;->(Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;)V invoke-direct {v0, p1, v1}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->(Ljava/lang/Object;Landroid/support/v4/media/session/IMediaSession;)V iput-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->b:Landroid/support/v4/media/session/MediaSessionCompat$Token; const/4 p1, 0x0 .line 16 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->d:Landroid/os/Bundle; const/4 p1, 0x3 .line 17 invoke-virtual {p0, p1}, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->setFlags(I)V return-void .line 18 :cond_0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string v0, "mediaSession is not a valid MediaSession object" invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method # virtual methods .method public a(Ljava/lang/String;Landroid/os/Bundle;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0 } names = { "event", "extras" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1, p2}, Landroid/media/session/MediaSession;->sendSessionEvent(Ljava/lang/String;Landroid/os/Bundle;)V return-void .end method .method public b(Landroid/support/v4/media/session/MediaSessionCompat$b;Landroid/os/Handler;)V .locals 3 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0 } names = { "callback", "handler" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->n:Landroid/support/v4/media/session/MediaSessionCompat$b; .line 3 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; if-nez p1, :cond_0 const/4 v2, 0x0 goto :goto_0 :cond_0 iget-object v2, p1, Landroid/support/v4/media/session/MediaSessionCompat$b;->b:Landroid/media/session/MediaSession$Callback; :goto_0 invoke-virtual {v1, v2, p2}, Landroid/media/session/MediaSession;->setCallback(Landroid/media/session/MediaSession$Callback;Landroid/os/Handler;)V if-eqz p1, :cond_1 .line 4 invoke-virtual {p1, p0, p2}, Landroid/support/v4/media/session/MediaSessionCompat$b;->E(Landroid/support/v4/media/session/MediaSessionCompat$c;Landroid/os/Handler;)V .line 5 :cond_1 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method .method public c(Ljava/lang/CharSequence;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "title" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setQueueTitle(Ljava/lang/CharSequence;)V return-void .end method .method public d(Landroid/support/v4/media/MediaMetadataCompat;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "metadata" } .end annotation .line 1 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->i:Landroid/support/v4/media/MediaMetadataCompat; .line 2 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; if-nez p1, :cond_0 const/4 p1, 0x0 goto :goto_0 .line 3 :cond_0 invoke-virtual {p1}, Landroid/support/v4/media/MediaMetadataCompat;->h()Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/media/MediaMetadata; .line 4 :goto_0 invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setMetadata(Landroid/media/MediaMetadata;)V return-void .end method .method public e(I)V .locals 0 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "type" } .end annotation .line 1 iput p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->j:I return-void .end method .method public f(Ljava/util/List;)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "queue" } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/List<", "Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;", ">;)V" } .end annotation .line 1 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->h:Ljava/util/List; if-nez p1, :cond_0 .line 2 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; const/4 v0, 0x0 invoke-virtual {p1, v0}, Landroid/media/session/MediaSession;->setQueue(Ljava/util/List;)V return-void .line 3 :cond_0 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 4 invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator; move-result-object p1 :goto_0 invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z move-result v1 if-eqz v1, :cond_1 invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/MediaSessionCompat$QueueItem; .line 5 invoke-virtual {v1}, Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;->f()Ljava/lang/Object; move-result-object v1 check-cast v1, Landroid/media/session/MediaSession$QueueItem; invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z goto :goto_0 .line 6 :cond_1 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {p1, v0}, Landroid/media/session/MediaSession;->setQueue(Ljava/util/List;)V return-void .end method .method public g(Landroid/support/v4/media/session/PlaybackStateCompat;)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "state" } .end annotation .line 1 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->g:Landroid/support/v4/media/session/PlaybackStateCompat; .line 2 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v0}, Landroid/os/RemoteCallbackList;->beginBroadcast()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_0 .line 3 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v1, v0}, Landroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/IMediaControllerCallback; .line 4 :try_start_0 invoke-interface {v1, p1}, Landroid/support/v4/media/session/IMediaControllerCallback;->onPlaybackStateChanged(Landroid/support/v4/media/session/PlaybackStateCompat;)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 5 :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v0}, Landroid/os/RemoteCallbackList;->finishBroadcast()V .line 6 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; if-nez p1, :cond_1 const/4 p1, 0x0 goto :goto_1 .line 7 :cond_1 invoke-virtual {p1}, Landroid/support/v4/media/session/PlaybackStateCompat;->n()Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/media/session/PlaybackState; .line 8 :goto_1 invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setPlaybackState(Landroid/media/session/PlaybackState;)V return-void .end method .method public getPlaybackState()Landroid/support/v4/media/session/PlaybackStateCompat; .locals 1 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->g:Landroid/support/v4/media/session/PlaybackStateCompat; return-object v0 .end method .method public getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; .locals 1 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->b:Landroid/support/v4/media/session/MediaSessionCompat$Token; return-object v0 .end method .method public h()Ljava/lang/String; .locals 4 .line 1 :try_start_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 const-string v1, "getCallingPackage" const/4 v2, 0x0 new-array v3, v2, [Ljava/lang/Class; invoke-virtual {v0, v1, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method; move-result-object v0 .line 2 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; new-array v2, v2, [Ljava/lang/Object; invoke-virtual {v0, v1, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/String; :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 return-object v0 :catch_0 move-exception v0 const-string v1, "MediaSessionCompat" const-string v2, "Cannot execute MediaSession.getCallingPackage()" .line 3 invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I const/4 v0, 0x0 return-object v0 .end method .method public i(Landroid/app/PendingIntent;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "pi" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setSessionActivity(Landroid/app/PendingIntent;)V return-void .end method .method public isActive()Z .locals 1 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0}, Landroid/media/session/MediaSession;->isActive()Z move-result v0 return v0 .end method .method public j(I)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "stream" } .end annotation .line 1 new-instance v0, Landroid/media/AudioAttributes$Builder; invoke-direct {v0}, Landroid/media/AudioAttributes$Builder;->()V .line 2 invoke-virtual {v0, p1}, Landroid/media/AudioAttributes$Builder;->setLegacyStreamType(I)Landroid/media/AudioAttributes$Builder; .line 3 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0}, Landroid/media/AudioAttributes$Builder;->build()Landroid/media/AudioAttributes; move-result-object v0 invoke-virtual {p1, v0}, Landroid/media/session/MediaSession;->setPlaybackToLocal(Landroid/media/AudioAttributes;)V return-void .end method .method public k()Landroid/support/v4/media/session/MediaSessionCompat$b; .locals 2 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->n:Landroid/support/v4/media/session/MediaSessionCompat$b; monitor-exit v0 return-object v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public l(Landroid/app/PendingIntent;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "mbr" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setMediaButtonReceiver(Landroid/app/PendingIntent;)V return-void .end method .method public m()Ljava/lang/Object; .locals 1 const/4 v0, 0x0 return-object v0 .end method .method public n(Z)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "active" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setActive(Z)V return-void .end method .method public o(Landroidx/media/e$b;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "remoteUserInfo" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iput-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->o:Landroidx/media/e$b; .line 3 monitor-exit v0 return-void :catchall_0 move-exception p1 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw p1 .end method .method public p()Ljava/lang/Object; .locals 1 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; return-object v0 .end method .method public q(Landroidx/media/VolumeProviderCompat;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "volumeProvider" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {p1}, Landroidx/media/VolumeProviderCompat;->e()Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/media/VolumeProvider; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setPlaybackToRemote(Landroid/media/VolumeProvider;)V return-void .end method .method public r()Landroidx/media/e$b; .locals 2 .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->c:Ljava/lang/Object; monitor-enter v0 .line 2 :try_start_0 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->o:Landroidx/media/e$b; monitor-exit v0 return-object v1 :catchall_0 move-exception v1 .line 3 monitor-exit v0 :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 throw v1 .end method .method public release()V .locals 4 const/4 v0, 0x1 .line 1 iput-boolean v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->e:Z .line 2 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v1}, Landroid/os/RemoteCallbackList;->kill()V .line 3 sget v1, Landroid/os/Build$VERSION;->SDK_INT:I const/4 v2, 0x0 const/16 v3, 0x1b if-ne v1, v3, :cond_0 .line 4 :try_start_0 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v1 const-string v3, "mCallback" invoke-virtual {v1, v3}, Ljava/lang/Class;->getDeclaredField(Ljava/lang/String;)Ljava/lang/reflect/Field; move-result-object v1 .line 5 invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->setAccessible(Z)V .line 6 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v1, v0}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/os/Handler; if-eqz v0, :cond_0 .line 7 invoke-virtual {v0, v2}, Landroid/os/Handler;->removeCallbacksAndMessages(Ljava/lang/Object;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception v0 const-string v1, "MediaSessionCompat" const-string v3, "Exception happened while accessing MediaSession.mCallback." .line 8 invoke-static {v1, v3, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I .line 9 :cond_0 :goto_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, v2}, Landroid/media/session/MediaSession;->setCallback(Landroid/media/session/MediaSession$Callback;)V .line 10 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0}, Landroid/media/session/MediaSession;->release()V return-void .end method .method public s(Landroid/content/Context;Ljava/lang/String;Landroid/os/Bundle;)Landroid/media/session/MediaSession; .locals 0 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0, 0x0, 0x0 } names = { "context", "tag", "sessionInfo" } .end annotation .line 1 new-instance p3, Landroid/media/session/MediaSession; invoke-direct {p3, p1, p2}, Landroid/media/session/MediaSession;->(Landroid/content/Context;Ljava/lang/String;)V return-object p3 .end method .method public setCaptioningEnabled(Z)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "enabled" } .end annotation .line 1 iget-boolean v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->k:Z if-eq v0, p1, :cond_1 .line 2 iput-boolean p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->k:Z .line 3 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v0}, Landroid/os/RemoteCallbackList;->beginBroadcast()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_0 .line 4 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v1, v0}, Landroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/IMediaControllerCallback; .line 5 :try_start_0 invoke-interface {v1, p1}, Landroid/support/v4/media/session/IMediaControllerCallback;->onCaptioningEnabledChanged(Z)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 6 :cond_0 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {p1}, Landroid/os/RemoteCallbackList;->finishBroadcast()V :cond_1 return-void .end method .method public setExtras(Landroid/os/Bundle;)V .locals 1 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "extras" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setExtras(Landroid/os/Bundle;)V return-void .end method .method public setFlags(I)V .locals 1 .annotation build Landroid/annotation/SuppressLint; value = { "WrongConstant" } .end annotation .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "flags" } .end annotation .line 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->a:Landroid/media/session/MediaSession; or-int/lit8 p1, p1, 0x1 or-int/lit8 p1, p1, 0x2 invoke-virtual {v0, p1}, Landroid/media/session/MediaSession;->setFlags(I)V return-void .end method .method public setRepeatMode(I)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "repeatMode" } .end annotation .line 1 iget v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->l:I if-eq v0, p1, :cond_1 .line 2 iput p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->l:I .line 3 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v0}, Landroid/os/RemoteCallbackList;->beginBroadcast()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_0 .line 4 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v1, v0}, Landroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/IMediaControllerCallback; .line 5 :try_start_0 invoke-interface {v1, p1}, Landroid/support/v4/media/session/IMediaControllerCallback;->onRepeatModeChanged(I)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 6 :cond_0 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {p1}, Landroid/os/RemoteCallbackList;->finishBroadcast()V :cond_1 return-void .end method .method public setShuffleMode(I)V .locals 2 .annotation system Ldalvik/annotation/MethodParameters; accessFlags = { 0x0 } names = { "shuffleMode" } .end annotation .line 1 iget v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->m:I if-eq v0, p1, :cond_1 .line 2 iput p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->m:I .line 3 iget-object v0, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v0}, Landroid/os/RemoteCallbackList;->beginBroadcast()I move-result v0 add-int/lit8 v0, v0, -0x1 :goto_0 if-ltz v0, :cond_0 .line 4 iget-object v1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {v1, v0}, Landroid/os/RemoteCallbackList;->getBroadcastItem(I)Landroid/os/IInterface; move-result-object v1 check-cast v1, Landroid/support/v4/media/session/IMediaControllerCallback; .line 5 :try_start_0 invoke-interface {v1, p1}, Landroid/support/v4/media/session/IMediaControllerCallback;->onShuffleModeChanged(I)V :try_end_0 .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_0} :catch_0 :catch_0 add-int/lit8 v0, v0, -0x1 goto :goto_0 .line 6 :cond_0 iget-object p1, p0, Landroid/support/v4/media/session/MediaSessionCompat$MediaSessionImplApi21;->f:Landroid/os/RemoteCallbackList; invoke-virtual {p1}, Landroid/os/RemoteCallbackList;->finishBroadcast()V :cond_1 return-void .end method