.class public final Lcom/google/android/gms/measurement/internal/zzkd; .super Lcom/google/android/gms/measurement/internal/zzkf; .source "com.google.android.gms:play-services-measurement@@20.1.0" # instance fields .field private final zza:Landroid/app/AlarmManager; .field private zzb:Lcom/google/android/gms/measurement/internal/zzan; .field private zzc:Ljava/lang/Integer; # direct methods .method public constructor (Lcom/google/android/gms/measurement/internal/zzkp;)V .locals 1 .line 1 invoke-direct {p0, p1}, Lcom/google/android/gms/measurement/internal/zzkf;->(Lcom/google/android/gms/measurement/internal/zzkp;)V iget-object p1, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 2 invoke-virtual {p1}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object p1 const-string v0, "alarm" .line 3 invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object p1 check-cast p1, Landroid/app/AlarmManager; iput-object p1, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zza:Landroid/app/AlarmManager; return-void .end method .method private final zzf()I .locals 3 .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzc:Ljava/lang/Integer; if-nez v0, :cond_1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object v0 .line 2 invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object v0 invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; move-result-object v0 const-string v1, "measurement" invoke-virtual {v0}, Ljava/lang/String;->length()I move-result v2 if-eqz v2, :cond_0 invoke-virtual {v1, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String; move-result-object v0 goto :goto_0 .line 3 :cond_0 new-instance v0, Ljava/lang/String; .line 4 invoke-direct {v0, v1}, Ljava/lang/String;->(Ljava/lang/String;)V :goto_0 invoke-virtual {v0}, Ljava/lang/String;->hashCode()I move-result v0 invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v0 iput-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzc:Ljava/lang/Integer; :cond_1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzc:Ljava/lang/Integer; .line 5 invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I move-result v0 return v0 .end method .method private final zzh()Landroid/app/PendingIntent; .locals 4 .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object v0 new-instance v1, Landroid/content/Intent; .line 2 invoke-direct {v1}, Landroid/content/Intent;->()V const-string v2, "com.google.android.gms.measurement.AppMeasurementReceiver" .line 3 invoke-virtual {v1, v0, v2}, Landroid/content/Intent;->setClassName(Landroid/content/Context;Ljava/lang/String;)Landroid/content/Intent; move-result-object v1 const-string v2, "com.google.android.gms.measurement.UPLOAD" .line 4 invoke-virtual {v1, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent; move-result-object v1 .line 5 sget v2, Lcom/google/android/gms/internal/measurement/zzbs;->zza:I const/4 v3, 0x0 invoke-static {v0, v3, v1, v2}, Lcom/google/android/gms/internal/measurement/zzbs;->zza(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; move-result-object v0 return-object v0 .end method .method private final zzi()Lcom/google/android/gms/measurement/internal/zzan; .locals 2 .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzb:Lcom/google/android/gms/measurement/internal/zzan; if-nez v0, :cond_0 new-instance v0, Lcom/google/android/gms/measurement/internal/zzkc; iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzke;->zzf:Lcom/google/android/gms/measurement/internal/zzkp; invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzkp;->zzq()Lcom/google/android/gms/measurement/internal/zzfr; move-result-object v1 invoke-direct {v0, p0, v1}, Lcom/google/android/gms/measurement/internal/zzkc;->(Lcom/google/android/gms/measurement/internal/zzkd;Lcom/google/android/gms/measurement/internal/zzgm;)V iput-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzb:Lcom/google/android/gms/measurement/internal/zzan; :cond_0 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zzb:Lcom/google/android/gms/measurement/internal/zzan; return-object v0 .end method .method private final zzj()V .locals 2 .annotation build Landroid/annotation/TargetApi; value = 0x18 .end annotation .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object v0 const-string v1, "jobscheduler" .line 2 invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/app/job/JobScheduler; if-eqz v0, :cond_0 .line 3 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzf()I move-result v1 invoke-virtual {v0, v1}, Landroid/app/job/JobScheduler;->cancel(I)V :cond_0 return-void .end method # virtual methods .method public final zza()V .locals 2 .line 1 invoke-virtual {p0}, Lcom/google/android/gms/measurement/internal/zzkf;->zzW()V iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; const-string v1, "Unscheduling upload" .line 2 invoke-static {v0, v1}, Lcom/google/android/gms/measurement/internal/c;->a(Lcom/google/android/gms/measurement/internal/zzfr;Ljava/lang/String;)V .line 3 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zza:Landroid/app/AlarmManager; if-eqz v0, :cond_0 .line 4 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzh()Landroid/app/PendingIntent; move-result-object v1 invoke-virtual {v0, v1}, Landroid/app/AlarmManager;->cancel(Landroid/app/PendingIntent;)V .line 5 :cond_0 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzi()Lcom/google/android/gms/measurement/internal/zzan; move-result-object v0 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzan;->zzb()V .line 6 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzj()V return-void .end method .method public final zzb()Z .locals 2 .line 1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzkd;->zza:Landroid/app/AlarmManager; if-eqz v0, :cond_0 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzh()Landroid/app/PendingIntent; move-result-object v1 invoke-virtual {v0, v1}, Landroid/app/AlarmManager;->cancel(Landroid/app/PendingIntent;)V .line 2 :cond_0 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzj()V const/4 v0, 0x0 return v0 .end method .method public final zzd(J)V .locals 6 .line 1 invoke-virtual {p0}, Lcom/google/android/gms/measurement/internal/zzkf;->zzW()V iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 2 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzaw()Lcom/google/android/gms/measurement/internal/zzaa; iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 3 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object v0 .line 4 invoke-static {v0}, Lcom/google/android/gms/measurement/internal/zzkw;->zzai(Landroid/content/Context;)Z move-result v1 if-nez v1, :cond_0 iget-object v1, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 5 invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzfr;->zzay()Lcom/google/android/gms/measurement/internal/zzeh; move-result-object v1 .line 6 invoke-virtual {v1}, Lcom/google/android/gms/measurement/internal/zzeh;->zzc()Lcom/google/android/gms/measurement/internal/zzef; move-result-object v1 const-string v2, "Receiver not registered/enabled" invoke-virtual {v1, v2}, Lcom/google/android/gms/measurement/internal/zzef;->zza(Ljava/lang/String;)V :cond_0 const/4 v1, 0x0 .line 7 invoke-static {v0, v1}, Lcom/google/android/gms/measurement/internal/zzkw;->zzaj(Landroid/content/Context;Z)Z move-result v0 if-nez v0, :cond_1 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 8 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzay()Lcom/google/android/gms/measurement/internal/zzeh; move-result-object v0 .line 9 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzeh;->zzc()Lcom/google/android/gms/measurement/internal/zzef; move-result-object v0 const-string v1, "Service not registered/enabled" invoke-virtual {v0, v1}, Lcom/google/android/gms/measurement/internal/zzef;->zza(Ljava/lang/String;)V .line 10 :cond_1 invoke-virtual {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zza()V iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 11 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzay()Lcom/google/android/gms/measurement/internal/zzeh; move-result-object v0 .line 12 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzeh;->zzj()Lcom/google/android/gms/measurement/internal/zzef; move-result-object v0 invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long; move-result-object v1 const-string v2, "Scheduling upload, millis" invoke-virtual {v0, v2, v1}, Lcom/google/android/gms/measurement/internal/zzef;->zzb(Ljava/lang/String;Ljava/lang/Object;)V iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 13 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzav()Lcom/google/android/gms/common/util/Clock; move-result-object v0 .line 14 invoke-interface {v0}, Lcom/google/android/gms/common/util/Clock;->elapsedRealtime()J iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 15 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzf()Lcom/google/android/gms/measurement/internal/zzaf; const-wide/16 v0, 0x0 .line 16 sget-object v2, Lcom/google/android/gms/measurement/internal/zzdu;->zzw:Lcom/google/android/gms/measurement/internal/zzdt; const/4 v3, 0x0 invoke-virtual {v2, v3}, Lcom/google/android/gms/measurement/internal/zzdt;->zza(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v2 check-cast v2, Ljava/lang/Long; invoke-virtual {v2}, Ljava/lang/Long;->longValue()J move-result-wide v2 invoke-static {v0, v1, v2, v3}, Ljava/lang/Math;->max(JJ)J move-result-wide v0 cmp-long v0, p1, v0 if-gez v0, :cond_2 .line 17 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzi()Lcom/google/android/gms/measurement/internal/zzan; move-result-object v0 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzan;->zze()Z move-result v0 if-nez v0, :cond_2 .line 18 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzi()Lcom/google/android/gms/measurement/internal/zzan; move-result-object v0 invoke-virtual {v0, p1, p2}, Lcom/google/android/gms/measurement/internal/zzan;->zzd(J)V :cond_2 iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 19 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzaw()Lcom/google/android/gms/measurement/internal/zzaa; iget-object v0, p0, Lcom/google/android/gms/measurement/internal/zzgk;->zzs:Lcom/google/android/gms/measurement/internal/zzfr; .line 20 invoke-virtual {v0}, Lcom/google/android/gms/measurement/internal/zzfr;->zzau()Landroid/content/Context; move-result-object v0 new-instance v1, Landroid/content/ComponentName; const-string v2, "com.google.android.gms.measurement.AppMeasurementJobService" .line 21 invoke-direct {v1, v0, v2}, Landroid/content/ComponentName;->(Landroid/content/Context;Ljava/lang/String;)V .line 22 invoke-direct {p0}, Lcom/google/android/gms/measurement/internal/zzkd;->zzf()I move-result v2 .line 23 new-instance v3, Landroid/os/PersistableBundle; invoke-direct {v3}, Landroid/os/PersistableBundle;->()V const-string v4, "action" const-string v5, "com.google.android.gms.measurement.UPLOAD" .line 24 invoke-virtual {v3, v4, v5}, Landroid/os/PersistableBundle;->putString(Ljava/lang/String;Ljava/lang/String;)V .line 25 new-instance v4, Landroid/app/job/JobInfo$Builder; invoke-direct {v4, v2, v1}, Landroid/app/job/JobInfo$Builder;->(ILandroid/content/ComponentName;)V .line 26 invoke-virtual {v4, p1, p2}, Landroid/app/job/JobInfo$Builder;->setMinimumLatency(J)Landroid/app/job/JobInfo$Builder; move-result-object v1 add-long/2addr p1, p1 .line 27 invoke-virtual {v1, p1, p2}, Landroid/app/job/JobInfo$Builder;->setOverrideDeadline(J)Landroid/app/job/JobInfo$Builder; move-result-object p1 .line 28 invoke-virtual {p1, v3}, Landroid/app/job/JobInfo$Builder;->setExtras(Landroid/os/PersistableBundle;)Landroid/app/job/JobInfo$Builder; move-result-object p1 .line 29 invoke-virtual {p1}, Landroid/app/job/JobInfo$Builder;->build()Landroid/app/job/JobInfo; move-result-object p1 const-string p2, "com.google.android.gms" const-string v1, "UploadAlarm" .line 30 invoke-static {v0, p1, p2, v1}, Lcom/google/android/gms/internal/measurement/zzbt;->zza(Landroid/content/Context;Landroid/app/job/JobInfo;Ljava/lang/String;Ljava/lang/String;)I return-void .end method