.class public final Landroid/support/v4/media/session/MediaControllerCompat; .super Ljava/lang/Object; .source "SourceFile" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Landroid/support/v4/media/session/MediaControllerCompat$TransportControlsApi21;, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;, Landroid/support/v4/media/session/MediaControllerCompat$TransportControlsBase;, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplBase;, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;, Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo;, Landroid/support/v4/media/session/MediaControllerCompat$TransportControls;, Landroid/support/v4/media/session/MediaControllerCompat$Callback; } .end annotation # static fields .field public static final COMMAND_ADD_QUEUE_ITEM:Ljava/lang/String; = "android.support.v4.media.session.command.ADD_QUEUE_ITEM" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_ADD_QUEUE_ITEM_AT:Ljava/lang/String; = "android.support.v4.media.session.command.ADD_QUEUE_ITEM_AT" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_ARGUMENT_INDEX:Ljava/lang/String; = "android.support.v4.media.session.command.ARGUMENT_INDEX" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_ARGUMENT_MEDIA_DESCRIPTION:Ljava/lang/String; = "android.support.v4.media.session.command.ARGUMENT_MEDIA_DESCRIPTION" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_GET_EXTRA_BINDER:Ljava/lang/String; = "android.support.v4.media.session.command.GET_EXTRA_BINDER" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_REMOVE_QUEUE_ITEM:Ljava/lang/String; = "android.support.v4.media.session.command.REMOVE_QUEUE_ITEM" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field public static final COMMAND_REMOVE_QUEUE_ITEM_AT:Ljava/lang/String; = "android.support.v4.media.session.command.REMOVE_QUEUE_ITEM_AT" .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation .end field .field static final TAG:Ljava/lang/String; = "MediaControllerCompat" # instance fields .field private final mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .field private final mRegisteredCallbacks:Ljava/util/concurrent/ConcurrentHashMap; .annotation build Landroid/annotation/SuppressLint; value = { "BanConcurrentHashMap" } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/concurrent/ConcurrentHashMap<", "Landroid/support/v4/media/session/MediaControllerCompat$Callback;", "Ljava/lang/Boolean;", ">;" } .end annotation .end field .field private final mToken:Landroid/support/v4/media/session/MediaSessionCompat$Token; # direct methods .method public constructor (Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V .locals 1 .param p2 # Landroid/support/v4/media/session/MediaSessionCompat$Token; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 253 invoke-direct {p0}, Ljava/lang/Object;->()V .line 225 new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mRegisteredCallbacks:Ljava/util/concurrent/ConcurrentHashMap; if-eqz p2, :cond_0 iput-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mToken:Landroid/support/v4/media/session/MediaSessionCompat$Token; .line 260 new-instance v0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21; invoke-direct {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->(Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; return-void .line 255 :cond_0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string p2, "sessionToken must not be null" invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public constructor (Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat;)V .locals 1 .param p2 # Landroid/support/v4/media/session/MediaSessionCompat; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 234 invoke-direct {p0}, Ljava/lang/Object;->()V .line 225 new-instance v0, Ljava/util/concurrent/ConcurrentHashMap; invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;->()V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mRegisteredCallbacks:Ljava/util/concurrent/ConcurrentHashMap; if-eqz p2, :cond_0 .line 238 invoke-virtual {p2}, Landroid/support/v4/media/session/MediaSessionCompat;->getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; move-result-object p2 iput-object p2, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mToken:Landroid/support/v4/media/session/MediaSessionCompat$Token; .line 241 new-instance v0, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21; invoke-direct {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImplApi21;->(Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V iput-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; return-void .line 236 :cond_0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string p2, "session must not be null" invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public static getMediaController(Landroid/app/Activity;)Landroid/support/v4/media/session/MediaControllerCompat; .locals 2 .param p0 # Landroid/app/Activity; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 186 invoke-virtual {p0}, Landroid/app/Activity;->getWindow()Landroid/view/Window; move-result-object v0 invoke-virtual {v0}, Landroid/view/Window;->getDecorView()Landroid/view/View; move-result-object v0 sget v1, Landroidx/media/R$id;->media_controller_compat_view_tag:I .line 187 invoke-virtual {v0, v1}, Landroid/view/View;->getTag(I)Ljava/lang/Object; move-result-object v0 .line 188 instance-of v1, v0, Landroid/support/v4/media/session/MediaControllerCompat; if-eqz v1, :cond_0 .line 189 check-cast v0, Landroid/support/v4/media/session/MediaControllerCompat; return-object v0 .line 191 :cond_0 invoke-virtual {p0}, Landroid/app/Activity;->getMediaController()Landroid/media/session/MediaController; move-result-object v0 if-nez v0, :cond_1 const/4 p0, 0x0 return-object p0 .line 195 :cond_1 invoke-virtual {v0}, Landroid/media/session/MediaController;->getSessionToken()Landroid/media/session/MediaSession$Token; move-result-object v0 .line 196 new-instance v1, Landroid/support/v4/media/session/MediaControllerCompat; .line 197 invoke-static {v0}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->fromToken(Ljava/lang/Object;)Landroid/support/v4/media/session/MediaSessionCompat$Token; move-result-object v0 invoke-direct {v1, p0, v0}, Landroid/support/v4/media/session/MediaControllerCompat;->(Landroid/content/Context;Landroid/support/v4/media/session/MediaSessionCompat$Token;)V return-object v1 .end method .method public static setMediaController(Landroid/app/Activity;Landroid/support/v4/media/session/MediaControllerCompat;)V .locals 2 .param p0 # Landroid/app/Activity; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .line 162 invoke-virtual {p0}, Landroid/app/Activity;->getWindow()Landroid/view/Window; move-result-object v0 invoke-virtual {v0}, Landroid/view/Window;->getDecorView()Landroid/view/View; move-result-object v0 sget v1, Landroidx/media/R$id;->media_controller_compat_view_tag:I invoke-virtual {v0, v1, p1}, Landroid/view/View;->setTag(ILjava/lang/Object;)V if-eqz p1, :cond_0 .line 167 invoke-virtual {p1}, Landroid/support/v4/media/session/MediaControllerCompat;->getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; move-result-object p1 invoke-virtual {p1}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getToken()Ljava/lang/Object; move-result-object p1 .line 168 new-instance v0, Landroid/media/session/MediaController; check-cast p1, Landroid/media/session/MediaSession$Token; invoke-direct {v0, p0, p1}, Landroid/media/session/MediaController;->(Landroid/content/Context;Landroid/media/session/MediaSession$Token;)V goto :goto_0 :cond_0 const/4 v0, 0x0 .line 170 :goto_0 invoke-virtual {p0, v0}, Landroid/app/Activity;->setMediaController(Landroid/media/session/MediaController;)V return-void .end method .method public static validateCustomAction(Ljava/lang/String;Landroid/os/Bundle;)V .locals 2 if-nez p0, :cond_0 return-void :cond_0 const-string v0, "android.support.v4.media.session.action.FOLLOW" .line 207 invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_1 const-string v0, "android.support.v4.media.session.action.UNFOLLOW" invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_1 goto :goto_0 :cond_1 if-eqz p1, :cond_2 const-string v0, "android.support.v4.media.session.ARGUMENT_MEDIA_ATTRIBUTE" .line 211 invoke-virtual {p1, v0}, Landroid/os/BaseBundle;->containsKey(Ljava/lang/String;)Z move-result p1 if-eqz p1, :cond_2 :goto_0 return-void .line 212 :cond_2 new-instance p1, Ljava/lang/IllegalArgumentException; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "An extra field android.support.v4.media.session.ARGUMENT_MEDIA_ATTRIBUTE is required for this action " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string p0, "." invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method # virtual methods .method public addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 335 invoke-interface {v0, p1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V return-void .end method .method public addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;I)V .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 355 invoke-interface {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->addQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;I)V return-void .end method .method public adjustVolume(II)V .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 553 invoke-interface {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->adjustVolume(II)V return-void .end method .method public dispatchMediaButtonEvent(Landroid/view/KeyEvent;)Z .locals 1 if-eqz p1, :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 286 invoke-interface {v0, p1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->dispatchMediaButtonEvent(Landroid/view/KeyEvent;)Z move-result p1 return p1 .line 284 :cond_0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string v0, "KeyEvent may not be null" invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public getExtras()Landroid/os/Bundle; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 409 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getExtras()Landroid/os/Bundle; move-result-object v0 return-object v0 .end method .method public getFlags()J .locals 2 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 480 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getFlags()J move-result-wide v0 return-wide v0 .end method .method public getMediaController()Ljava/lang/Object; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 684 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getMediaController()Ljava/lang/Object; move-result-object v0 return-object v0 .end method .method public getMetadata()Landroid/support/v4/media/MediaMetadataCompat; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 309 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getMetadata()Landroid/support/v4/media/MediaMetadataCompat; move-result-object v0 return-object v0 .end method .method public getPackageName()Ljava/lang/String; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 654 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getPackageName()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public getPlaybackInfo()Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 489 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getPlaybackInfo()Landroid/support/v4/media/session/MediaControllerCompat$PlaybackInfo; move-result-object v0 return-object v0 .end method .method public getPlaybackState()Landroid/support/v4/media/session/PlaybackStateCompat; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 300 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getPlaybackState()Landroid/support/v4/media/session/PlaybackStateCompat; move-result-object v0 return-object v0 .end method .method public getQueue()Ljava/util/List; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;", ">;" } .end annotation iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 319 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getQueue()Ljava/util/List; move-result-object v0 return-object v0 .end method .method public getQueueTitle()Ljava/lang/CharSequence; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 402 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getQueueTitle()Ljava/lang/CharSequence; move-result-object v0 return-object v0 .end method .method public getRatingType()I .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 431 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getRatingType()I move-result v0 return v0 .end method .method public getRepeatMode()I .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 457 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getRepeatMode()I move-result v0 return v0 .end method .method public getSession2Token()Landroidx/versionedparcelable/VersionedParcelable; .locals 1 .annotation build Landroidx/annotation/Nullable; .end annotation .annotation build Landroidx/annotation/RestrictTo; value = { .enum Landroidx/annotation/RestrictTo$Scope;->LIBRARY:Landroidx/annotation/RestrictTo$Scope; } .end annotation iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mToken:Landroid/support/v4/media/session/MediaSessionCompat$Token; .line 521 invoke-virtual {v0}, Landroid/support/v4/media/session/MediaSessionCompat$Token;->getSession2Token()Landroidx/versionedparcelable/VersionedParcelable; move-result-object v0 return-object v0 .end method .method public getSessionActivity()Landroid/app/PendingIntent; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 499 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getSessionActivity()Landroid/app/PendingIntent; move-result-object v0 return-object v0 .end method .method public getSessionInfo()Landroid/os/Bundle; .locals 1 .annotation build Landroidx/annotation/NonNull; .end annotation iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 670 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getSessionInfo()Landroid/os/Bundle; move-result-object v0 return-object v0 .end method .method public getSessionToken()Landroid/support/v4/media/session/MediaSessionCompat$Token; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mToken:Landroid/support/v4/media/session/MediaSessionCompat$Token; return-object v0 .end method .method public getShuffleMode()I .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 470 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getShuffleMode()I move-result v0 return v0 .end method .method public getTransportControls()Landroid/support/v4/media/session/MediaControllerCompat$TransportControls; .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 272 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->getTransportControls()Landroid/support/v4/media/session/MediaControllerCompat$TransportControls; move-result-object v0 return-object v0 .end method .method public isCaptioningEnabled()Z .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 444 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->isCaptioningEnabled()Z move-result v0 return v0 .end method .method public isSessionReady()Z .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 645 invoke-interface {v0}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->isSessionReady()Z move-result v0 return v0 .end method .method public registerCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V .locals 1 .param p1 # Landroid/support/v4/media/session/MediaControllerCompat$Callback; .annotation build Landroidx/annotation/NonNull; .end annotation .end param const/4 v0, 0x0 .line 563 invoke-virtual {p0, p1, v0}, Landroid/support/v4/media/session/MediaControllerCompat;->registerCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;Landroid/os/Handler;)V return-void .end method .method public registerCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;Landroid/os/Handler;)V .locals 2 .param p1 # Landroid/support/v4/media/session/MediaControllerCompat$Callback; .annotation build Landroidx/annotation/NonNull; .end annotation .end param if-eqz p1, :cond_2 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mRegisteredCallbacks:Ljava/util/concurrent/ConcurrentHashMap; sget-object v1, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean; .line 579 invoke-virtual {v0, p1, v1}, Ljava/util/concurrent/ConcurrentHashMap;->putIfAbsent(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_0 const-string p1, "MediaControllerCompat" const-string p2, "the callback has already been registered" .line 580 invoke-static {p1, p2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I return-void :cond_0 if-nez p2, :cond_1 .line 584 new-instance p2, Landroid/os/Handler; invoke-direct {p2}, Landroid/os/Handler;->()V .line 586 :cond_1 invoke-virtual {p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->setHandler(Landroid/os/Handler;)V iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 587 invoke-interface {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->registerCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;Landroid/os/Handler;)V return-void .line 577 :cond_2 new-instance p1, Ljava/lang/IllegalArgumentException; const-string p2, "callback must not be null" invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public removeQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 372 invoke-interface {v0, p1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->removeQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V return-void .end method .method public removeQueueItemAt(I)V .locals 2 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 389 invoke-virtual {p0}, Landroid/support/v4/media/session/MediaControllerCompat;->getQueue()Ljava/util/List; move-result-object v0 if-eqz v0, :cond_0 if-ltz p1, :cond_0 .line 390 invoke-interface {v0}, Ljava/util/List;->size()I move-result v1 if-ge p1, v1, :cond_0 .line 391 invoke-interface {v0, p1}, Ljava/util/List;->get(I)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/support/v4/media/session/MediaSessionCompat$QueueItem; if-eqz p1, :cond_0 .line 393 invoke-virtual {p1}, Landroid/support/v4/media/session/MediaSessionCompat$QueueItem;->getDescription()Landroid/support/v4/media/MediaDescriptionCompat; move-result-object p1 invoke-virtual {p0, p1}, Landroid/support/v4/media/session/MediaControllerCompat;->removeQueueItem(Landroid/support/v4/media/MediaDescriptionCompat;)V :cond_0 return-void .end method .method public sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V .locals 1 .param p1 # Ljava/lang/String; .annotation build Landroidx/annotation/NonNull; .end annotation .end param .param p2 # Landroid/os/Bundle; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .param p3 # Landroid/os/ResultReceiver; .annotation build Landroidx/annotation/Nullable; .end annotation .end param .line 622 invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z move-result v0 if-nez v0, :cond_0 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 625 invoke-interface {v0, p1, p2, p3}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->sendCommand(Ljava/lang/String;Landroid/os/Bundle;Landroid/os/ResultReceiver;)V return-void .line 623 :cond_0 new-instance p1, Ljava/lang/IllegalArgumentException; const-string p2, "command must neither be null nor empty" invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method .method public setVolumeTo(II)V .locals 1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 536 invoke-interface {v0, p1, p2}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->setVolumeTo(II)V return-void .end method .method public unregisterCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V .locals 2 .param p1 # Landroid/support/v4/media/session/MediaControllerCompat$Callback; .annotation build Landroidx/annotation/NonNull; .end annotation .end param if-eqz p1, :cond_1 iget-object v0, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mRegisteredCallbacks:Ljava/util/concurrent/ConcurrentHashMap; .line 600 invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 if-nez v0, :cond_0 const-string p1, "MediaControllerCompat" const-string v0, "the callback has never been registered" .line 601 invoke-static {p1, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I return-void :cond_0 const/4 v0, 0x0 :try_start_0 iget-object v1, p0, Landroid/support/v4/media/session/MediaControllerCompat;->mImpl:Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl; .line 605 invoke-interface {v1, p1}, Landroid/support/v4/media/session/MediaControllerCompat$MediaControllerImpl;->unregisterCallback(Landroid/support/v4/media/session/MediaControllerCompat$Callback;)V :try_end_0 .catchall {:try_start_0 .. :try_end_0} :catchall_0 .line 607 invoke-virtual {p1, v0}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->setHandler(Landroid/os/Handler;)V return-void :catchall_0 move-exception v1 invoke-virtual {p1, v0}, Landroid/support/v4/media/session/MediaControllerCompat$Callback;->setHandler(Landroid/os/Handler;)V .line 608 throw v1 .line 598 :cond_1 new-instance p1, Ljava/lang/IllegalArgumentException; const-string v0, "callback must not be null" invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p1 .end method