MediaIntentReceiver.smali
.class public Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;
.super Landroid/content/BroadcastReceiver;
.source ""
# static fields
.field public static final ACTION_DISCONNECT:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.DISCONNECT"
.field public static final ACTION_FORWARD:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.FORWARD"
.field public static final ACTION_REWIND:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.REWIND"
.field public static final ACTION_SKIP_NEXT:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.SKIP_NEXT"
.field public static final ACTION_SKIP_PREV:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.SKIP_PREV"
.field public static final ACTION_STOP_CASTING:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.STOP_CASTING"
.field public static final ACTION_TOGGLE_PLAYBACK:Ljava/lang/String; = "com.google.android.gms.cast.framework.action.TOGGLE_PLAYBACK"
.field public static final EXTRA_SKIP_STEP_MS:Ljava/lang/String; = "googlecast-extra_skip_step_ms"
# direct methods
.method public constructor <init>()V
.registers 1
invoke-direct {p0}, Landroid/content/BroadcastReceiver;-><init>()V
return-void
.end method
.method private static zza(Lcom/google/android/gms/cast/framework/CastSession;J)V
.registers 6
const-wide/16 v0, 0x0
cmp-long v2, p1, v0
if-nez v2, :cond_7
return-void
:cond_7
invoke-static {p0}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzh(Lcom/google/android/gms/cast/framework/CastSession;)Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
move-result-object p0
if-eqz p0, :cond_22
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->isLiveStream()Z
move-result v0
if-nez v0, :cond_22
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->isPlayingAd()Z
move-result v0
if-eqz v0, :cond_1a
goto :goto_22
:cond_1a
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->getApproximateStreamPosition()J
move-result-wide v0
add-long/2addr v0, p1
invoke-virtual {p0, v0, v1}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->seek(J)Lcom/google/android/gms/common/api/PendingResult;
:cond_22
:goto_22
return-void
.end method
.method private static zzg(Lcom/google/android/gms/cast/framework/CastSession;)V
.registers 1
invoke-static {p0}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzh(Lcom/google/android/gms/cast/framework/CastSession;)Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
move-result-object p0
if-nez p0, :cond_7
return-void
:cond_7
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->togglePlayback()V
return-void
.end method
.method private static zzh(Lcom/google/android/gms/cast/framework/CastSession;)Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
.registers 2
if-eqz p0, :cond_e
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/Session;->isConnected()Z
move-result v0
if-nez v0, :cond_9
goto :goto_e
:cond_9
invoke-virtual {p0}, Lcom/google/android/gms/cast/framework/CastSession;->getRemoteMediaClient()Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
move-result-object p0
return-object p0
:cond_e
:goto_e
const/4 p0, 0x0
return-object p0
.end method
# virtual methods
.method public onReceive(Landroid/content/Context;Landroid/content/Intent;)V
.registers 11
invoke-virtual {p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
move-result-object v0
if-nez v0, :cond_7
return-void
:cond_7
invoke-static {p1}, Lcom/google/android/gms/cast/framework/CastContext;->getSharedInstance(Landroid/content/Context;)Lcom/google/android/gms/cast/framework/CastContext;
move-result-object v1
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/CastContext;->getSessionManager()Lcom/google/android/gms/cast/framework/SessionManager;
move-result-object v1
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
const/4 v2, -0x1
invoke-virtual {v0}, Ljava/lang/String;->hashCode()I
move-result v3
const/4 v4, 0x1
const/4 v5, 0x0
sparse-switch v3, :sswitch_data_c0
goto/16 :goto_75
:sswitch_1e
const-string v3, "android.intent.action.MEDIA_BUTTON"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_27
goto :goto_75
:cond_27
const/4 v2, 0x7
goto :goto_75
:sswitch_29
const-string v3, "com.google.android.gms.cast.framework.action.FORWARD"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_32
goto :goto_75
:cond_32
const/4 v2, 0x6
goto :goto_75
:sswitch_34
const-string v3, "com.google.android.gms.cast.framework.action.TOGGLE_PLAYBACK"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_3d
goto :goto_75
:cond_3d
const/4 v2, 0x5
goto :goto_75
:sswitch_3f
const-string v3, "com.google.android.gms.cast.framework.action.DISCONNECT"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_48
goto :goto_75
:cond_48
const/4 v2, 0x4
goto :goto_75
:sswitch_4a
const-string v3, "com.google.android.gms.cast.framework.action.STOP_CASTING"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_53
goto :goto_75
:cond_53
const/4 v2, 0x3
goto :goto_75
:sswitch_55
const-string v3, "com.google.android.gms.cast.framework.action.SKIP_PREV"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_5e
goto :goto_75
:cond_5e
const/4 v2, 0x2
goto :goto_75
:sswitch_60
const-string v3, "com.google.android.gms.cast.framework.action.SKIP_NEXT"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_69
goto :goto_75
:cond_69
const/4 v2, 0x1
goto :goto_75
:sswitch_6b
const-string v3, "com.google.android.gms.cast.framework.action.REWIND"
invoke-virtual {v0, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
if-nez v3, :cond_74
goto :goto_75
:cond_74
const/4 v2, 0x0
:goto_75
const-wide/16 v6, 0x0
const-string v3, "googlecast-extra_skip_step_ms"
packed-switch v2, :pswitch_data_e2
invoke-virtual {p0, p1, v0, p2}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveOtherAction(Landroid/content/Context;Ljava/lang/String;Landroid/content/Intent;)V
return-void
:pswitch_80
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object p1
invoke-virtual {p0, p1, p2}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionMediaButton(Lcom/google/android/gms/cast/framework/Session;Landroid/content/Intent;)V
return-void
:pswitch_88
invoke-virtual {p2, v3, v6, v7}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
move-result-wide p1
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object v0
invoke-virtual {p0, v0, p1, p2}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionForward(Lcom/google/android/gms/cast/framework/Session;J)V
return-void
:pswitch_94
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionTogglePlayback(Lcom/google/android/gms/cast/framework/Session;)V
return-void
:pswitch_9c
invoke-virtual {v1, v5}, Lcom/google/android/gms/cast/framework/SessionManager;->endCurrentSession(Z)V
return-void
:pswitch_a0
invoke-virtual {v1, v4}, Lcom/google/android/gms/cast/framework/SessionManager;->endCurrentSession(Z)V
return-void
:pswitch_a4
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionSkipPrev(Lcom/google/android/gms/cast/framework/Session;)V
return-void
:pswitch_ac
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object p1
invoke-virtual {p0, p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionSkipNext(Lcom/google/android/gms/cast/framework/Session;)V
return-void
:pswitch_b4
invoke-virtual {p2, v3, v6, v7}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
move-result-wide p1
invoke-virtual {v1}, Lcom/google/android/gms/cast/framework/SessionManager;->getCurrentSession()Lcom/google/android/gms/cast/framework/Session;
move-result-object v0
invoke-virtual {p0, v0, p1, p2}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveActionRewind(Lcom/google/android/gms/cast/framework/Session;J)V
return-void
:sswitch_data_c0
.sparse-switch
-0x655132e4 -> :sswitch_6b
-0x3855de4e -> :sswitch_60
-0x3854c70e -> :sswitch_55
-0x27d32f79 -> :sswitch_4a
-0x76b6783 -> :sswitch_3f
0xe0a3765 -> :sswitch_34
0x51303e64 -> :sswitch_29
0x7708a552 -> :sswitch_1e
.end sparse-switch
:pswitch_data_e2
.packed-switch 0x0
:pswitch_b4
:pswitch_ac
:pswitch_a4
:pswitch_a0
:pswitch_9c
:pswitch_94
:pswitch_88
:pswitch_80
.end packed-switch
.end method
.method protected onReceiveActionForward(Lcom/google/android/gms/cast/framework/Session;J)V
.registers 5
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_9
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
invoke-static {p1, p2, p3}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zza(Lcom/google/android/gms/cast/framework/CastSession;J)V
:cond_9
return-void
.end method
.method protected onReceiveActionMediaButton(Lcom/google/android/gms/cast/framework/Session;Landroid/content/Intent;)V
.registers 5
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_2e
const-string v0, "android.intent.extra.KEY_EVENT"
invoke-virtual {p2, v0}, Landroid/content/Intent;->hasExtra(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_d
return-void
:cond_d
invoke-virtual {p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
move-result-object p2
invoke-virtual {p2, v0}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p2
check-cast p2, Landroid/view/KeyEvent;
if-eqz p2, :cond_2e
invoke-virtual {p2}, Landroid/view/KeyEvent;->getAction()I
move-result v0
if-eqz v0, :cond_20
goto :goto_2e
:cond_20
invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I
move-result p2
const/16 v0, 0x55
if-ne p2, v0, :cond_2e
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
invoke-static {p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzg(Lcom/google/android/gms/cast/framework/CastSession;)V
nop
:cond_2e
:goto_2e
return-void
.end method
.method protected onReceiveActionRewind(Lcom/google/android/gms/cast/framework/Session;J)V
.registers 5
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_a
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
neg-long p2, p2
invoke-static {p1, p2, p3}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zza(Lcom/google/android/gms/cast/framework/CastSession;J)V
:cond_a
return-void
.end method
.method protected onReceiveActionSkipNext(Lcom/google/android/gms/cast/framework/Session;)V
.registers 3
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_18
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
invoke-static {p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzh(Lcom/google/android/gms/cast/framework/CastSession;)Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
move-result-object p1
if-eqz p1, :cond_18
invoke-virtual {p1}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->isPlayingAd()Z
move-result v0
if-eqz v0, :cond_13
goto :goto_18
:cond_13
const/4 v0, 0x0
invoke-virtual {p1, v0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->queueNext(Lorg/json/JSONObject;)Lcom/google/android/gms/common/api/PendingResult;
nop
:cond_18
:goto_18
return-void
.end method
.method protected onReceiveActionSkipPrev(Lcom/google/android/gms/cast/framework/Session;)V
.registers 3
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_18
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
invoke-static {p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzh(Lcom/google/android/gms/cast/framework/CastSession;)Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;
move-result-object p1
if-eqz p1, :cond_18
invoke-virtual {p1}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->isPlayingAd()Z
move-result v0
if-eqz v0, :cond_13
goto :goto_18
:cond_13
const/4 v0, 0x0
invoke-virtual {p1, v0}, Lcom/google/android/gms/cast/framework/media/RemoteMediaClient;->queuePrev(Lorg/json/JSONObject;)Lcom/google/android/gms/common/api/PendingResult;
nop
:cond_18
:goto_18
return-void
.end method
.method protected onReceiveActionTogglePlayback(Lcom/google/android/gms/cast/framework/Session;)V
.registers 3
instance-of v0, p1, Lcom/google/android/gms/cast/framework/CastSession;
if-eqz v0, :cond_9
check-cast p1, Lcom/google/android/gms/cast/framework/CastSession;
invoke-static {p1}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->zzg(Lcom/google/android/gms/cast/framework/CastSession;)V
:cond_9
return-void
.end method
.method protected onReceiveOtherAction(Landroid/content/Context;Ljava/lang/String;Landroid/content/Intent;)V
.registers 4
return-void
.end method
.method protected onReceiveOtherAction(Ljava/lang/String;Landroid/content/Intent;)V
.registers 4
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, 0x0
invoke-virtual {p0, v0, p1, p2}, Lcom/google/android/gms/cast/framework/media/MediaIntentReceiver;->onReceiveOtherAction(Landroid/content/Context;Ljava/lang/String;Landroid/content/Intent;)V
return-void
.end method