GooglePlayServicesUtilLight.smali
.class public Lcom/google/android/gms/common/GooglePlayServicesUtilLight;
.super Ljava/lang/Object;
# static fields
.field public static final FEATURE_SIDEWINDER:Ljava/lang/String; = "cn.google"
.field public static final GOOGLE_PLAY_GAMES_PACKAGE:Ljava/lang/String; = "com.google.android.play.games"
.field public static final GOOGLE_PLAY_SERVICES_PACKAGE:Ljava/lang/String; = "com.google.android.gms"
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field public static final GOOGLE_PLAY_SERVICES_VERSION_CODE:I
.annotation runtime Ljava/lang/Deprecated;
.end annotation
.end field
.field public static final GOOGLE_PLAY_STORE_GAMES_URI_STRING:Ljava/lang/String; = "http://play.google.com/store/apps/category/GAME"
.field public static final GOOGLE_PLAY_STORE_PACKAGE:Ljava/lang/String; = "com.android.vending"
.field public static final GOOGLE_PLAY_STORE_URI_STRING:Ljava/lang/String; = "http://play.google.com/store/apps/"
.field public static final HONOR_DEBUG_CERTIFICATES:Z = false
.field public static final KEY_METADATA_GOOGLE_PLAY_SERVICES_VERSION:Ljava/lang/String; = "com.google.android.gms.version"
.field public static final MAX_ATTEMPTS_NO_SUCH_ALGORITHM:I = 0x2
.field public static sIsTestMode:Z
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.end field
.field public static sTestIsUserBuild:Z
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.end field
.field private static zzbr:Z
.field private static zzbs:Z
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.end field
.field static final zzbt:Ljava/util/concurrent/atomic/AtomicBoolean;
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.end field
.field private static final zzbu:Ljava/util/concurrent/atomic/AtomicBoolean;
# direct methods
.method static constructor <clinit>()V
.registers 2
const/4 v1, 0x0
const v0, 0xbdfcb8
sput v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->GOOGLE_PLAY_SERVICES_VERSION_CODE:I
sput-boolean v1, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->sIsTestMode:Z
sput-boolean v1, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->sTestIsUserBuild:Z
sput-boolean v1, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbr:Z
sput-boolean v1, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbs:Z
new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>()V
sput-object v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbt:Ljava/util/concurrent/atomic/AtomicBoolean;
new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-direct {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>()V
sput-object v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbu:Ljava/util/concurrent/atomic/AtomicBoolean;
return-void
.end method
.method constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static cancelAvailabilityErrorNotifications(Landroid/content/Context;)V
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
sget-object v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbt:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->getAndSet(Z)Z
move-result v0
if-eqz v0, :cond_a
:cond_9
:goto_9
return-void
:cond_a
:try_start_a
const-string v0, "notification"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/app/NotificationManager;
if-eqz v0, :cond_9
const/16 v1, 0x28c4
invoke-virtual {v0, v1}, Landroid/app/NotificationManager;->cancel(I)V
:try_end_19
.catch Ljava/lang/SecurityException; {:try_start_a .. :try_end_19} :catch_1a
goto :goto_9
:catch_1a
move-exception v0
goto :goto_9
.end method
.method public static enableUsingApkIndependentContext()V
.registers 2
sget-object v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbu:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
return-void
.end method
.method public static ensurePlayServicesAvailable(Landroid/content/Context;)V
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
sget v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->GOOGLE_PLAY_SERVICES_VERSION_CODE:I
invoke-static {p0, v0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->ensurePlayServicesAvailable(Landroid/content/Context;I)V
return-void
.end method
.method public static ensurePlayServicesAvailable(Landroid/content/Context;I)V
.registers 6
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailabilityLight;
move-result-object v0
invoke-virtual {v0, p0, p1}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->isGooglePlayServicesAvailable(Landroid/content/Context;I)I
move-result v0
if-eqz v0, :cond_34
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailabilityLight;
move-result-object v1
const-string v2, "e"
invoke-virtual {v1, p0, v0, v2}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getErrorResolutionIntent(Landroid/content/Context;ILjava/lang/String;)Landroid/content/Intent;
move-result-object v1
const/16 v2, 0x39
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3, v2}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v2, "GooglePlayServices not available due to error "
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
if-nez v1, :cond_2c
new-instance v1, Lcom/google/android/gms/common/GooglePlayServicesNotAvailableException;
invoke-direct {v1, v0}, Lcom/google/android/gms/common/GooglePlayServicesNotAvailableException;-><init>(I)V
throw v1
:cond_2c
new-instance v2, Lcom/google/android/gms/common/GooglePlayServicesRepairableException;
const-string v3, "Google Play Services not available"
invoke-direct {v2, v0, v3, v1}, Lcom/google/android/gms/common/GooglePlayServicesRepairableException;-><init>(ILjava/lang/String;Landroid/content/Intent;)V
throw v2
:cond_34
return-void
.end method
.method public static getApkVersion(Landroid/content/Context;)I
.registers 5
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, 0x0
:try_start_1
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
const-string v2, "com.google.android.gms"
const/4 v3, 0x0
invoke-virtual {v1, v2, v3}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
:try_end_b
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_1 .. :try_end_b} :catch_f
move-result-object v0
iget v0, v0, Landroid/content/pm/PackageInfo;->versionCode:I
:goto_e
return v0
:catch_f
move-exception v1
goto :goto_e
.end method
.method public static getClientVersion(Landroid/content/Context;)I
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, 0x1
invoke-static {v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkState(Z)V
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v0
invoke-static {p0, v0}, Lcom/google/android/gms/common/util/ClientLibraryUtils;->getClientVersion(Landroid/content/Context;Ljava/lang/String;)I
move-result v0
return v0
.end method
.method public static getErrorPendingIntent(ILandroid/content/Context;I)Landroid/app/PendingIntent;
.registers 4
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailabilityLight;
move-result-object v0
invoke-virtual {v0, p1, p0, p2}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getErrorResolutionPendingIntent(Landroid/content/Context;II)Landroid/app/PendingIntent;
move-result-object v0
return-object v0
.end method
.method public static getErrorString(I)Ljava/lang/String;
.registers 2
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {p0}, Lcom/google/android/gms/common/ConnectionResult;->zza(I)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static getGooglePlayServicesAvailabilityRecoveryIntent(I)Landroid/content/Intent;
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v1, 0x0
invoke-static {}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getInstance()Lcom/google/android/gms/common/GoogleApiAvailabilityLight;
move-result-object v0
invoke-virtual {v0, v1, p0, v1}, Lcom/google/android/gms/common/GoogleApiAvailabilityLight;->getErrorResolutionIntent(Landroid/content/Context;ILjava/lang/String;)Landroid/content/Intent;
move-result-object v0
return-object v0
.end method
.method public static getOpenSourceSoftwareLicenseInfo(Landroid/content/Context;)Ljava/lang/String;
.registers 5
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v1, 0x0
new-instance v0, Landroid/net/Uri$Builder;
invoke-direct {v0}, Landroid/net/Uri$Builder;-><init>()V
const-string v2, "android.resource"
invoke-virtual {v0, v2}, Landroid/net/Uri$Builder;->scheme(Ljava/lang/String;)Landroid/net/Uri$Builder;
move-result-object v0
const-string v2, "com.google.android.gms"
invoke-virtual {v0, v2}, Landroid/net/Uri$Builder;->authority(Ljava/lang/String;)Landroid/net/Uri$Builder;
move-result-object v0
const-string v2, "raw"
invoke-virtual {v0, v2}, Landroid/net/Uri$Builder;->appendPath(Ljava/lang/String;)Landroid/net/Uri$Builder;
move-result-object v0
const-string v2, "oss_notice"
invoke-virtual {v0, v2}, Landroid/net/Uri$Builder;->appendPath(Ljava/lang/String;)Landroid/net/Uri$Builder;
move-result-object v0
invoke-virtual {v0}, Landroid/net/Uri$Builder;->build()Landroid/net/Uri;
move-result-object v0
:try_start_22
invoke-virtual {p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
move-result-object v2
invoke-virtual {v2, v0}, Landroid/content/ContentResolver;->openInputStream(Landroid/net/Uri;)Ljava/io/InputStream;
:try_end_29
.catch Ljava/lang/Exception; {:try_start_22 .. :try_end_29} :catch_4e
move-result-object v2
:try_start_2a
new-instance v0, Ljava/util/Scanner;
invoke-direct {v0, v2}, Ljava/util/Scanner;-><init>(Ljava/io/InputStream;)V
const-string v3, "\\A"
invoke-virtual {v0, v3}, Ljava/util/Scanner;->useDelimiter(Ljava/lang/String;)Ljava/util/Scanner;
move-result-object v0
invoke-virtual {v0}, Ljava/util/Scanner;->next()Ljava/lang/String;
:try_end_38
.catch Ljava/util/NoSuchElementException; {:try_start_2a .. :try_end_38} :catch_3f
.catchall {:try_start_2a .. :try_end_38} :catchall_47
move-result-object v0
if-eqz v2, :cond_3e
:try_start_3b
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:cond_3e
:goto_3e
return-object v0
:catch_3f
move-exception v0
if-eqz v2, :cond_45
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:cond_45
move-object v0, v1
goto :goto_3e
:catchall_47
move-exception v0
if-eqz v2, :cond_4d
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:cond_4d
throw v0
:try_end_4e
.catch Ljava/lang/Exception; {:try_start_3b .. :try_end_4e} :catch_4e
:catch_4e
move-exception v0
move-object v0, v1
goto :goto_3e
.end method
.method public static getRemoteContext(Landroid/content/Context;)Landroid/content/Context;
.registers 3
:try_start_0
const-string v0, "com.google.android.gms"
const/4 v1, 0x3
invoke-virtual {p0, v0, v1}, Landroid/content/Context;->createPackageContext(Ljava/lang/String;I)Landroid/content/Context;
:try_end_6
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_6} :catch_8
move-result-object v0
:goto_7
return-object v0
:catch_8
move-exception v0
const/4 v0, 0x0
goto :goto_7
.end method
.method public static getRemoteResource(Landroid/content/Context;)Landroid/content/res/Resources;
.registers 3
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
const-string v1, "com.google.android.gms"
invoke-virtual {v0, v1}, Landroid/content/pm/PackageManager;->getResourcesForApplication(Ljava/lang/String;)Landroid/content/res/Resources;
:try_end_9
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_9} :catch_b
move-result-object v0
:goto_a
return-object v0
:catch_b
move-exception v0
const/4 v0, 0x0
goto :goto_a
.end method
.method public static honorsDebugCertificates(Landroid/content/Context;)Z
.registers 2
invoke-static {p0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isTestKeysBuild(Landroid/content/Context;)Z
move-result v0
if-nez v0, :cond_c
invoke-static {}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isUserBuildDevice()Z
move-result v0
if-nez v0, :cond_e
:cond_c
const/4 v0, 0x1
:goto_d
return v0
:cond_e
const/4 v0, 0x0
goto :goto_d
.end method
.method public static isGooglePlayServicesAvailable(Landroid/content/Context;)I
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
sget v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->GOOGLE_PLAY_SERVICES_VERSION_CODE:I
invoke-static {p0, v0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isGooglePlayServicesAvailable(Landroid/content/Context;I)I
move-result v0
return v0
.end method
.method public static isGooglePlayServicesAvailable(Landroid/content/Context;I)I
.registers 7
.annotation runtime Ljava/lang/Deprecated;
.end annotation
:try_start_0
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
move-result-object v0
sget v1, Lcom/google/android/gms/common/R$string;->common_google_play_services_unknown_issue:I
invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String;
:try_end_9
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_9} :catch_70
:goto_9
const-string v0, "com.google.android.gms"
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_5c
sget-object v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbu:Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-nez v0, :cond_5c
invoke-static {p0}, Lcom/google/android/gms/common/internal/MetadataValueReader;->getGooglePlayServicesVersion(Landroid/content/Context;)I
move-result v0
if-nez v0, :cond_2b
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "A required meta-data tag in your app\'s AndroidManifest.xml does not exist. You must have the following declaration within the <application> element: <meta-data android:name=\"com.google.android.gms.version\" android:value=\"@integer/google_play_services_version\" />"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_2b
sget v1, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->GOOGLE_PLAY_SERVICES_VERSION_CODE:I
if-eq v0, v1, :cond_5c
new-instance v1, Ljava/lang/IllegalStateException;
sget v2, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->GOOGLE_PLAY_SERVICES_VERSION_CODE:I
const/16 v3, 0x140
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4, v3}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v3, "The meta-data tag in your app\'s AndroidManifest.xml does not have the right value. Expected "
invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v2
const-string v3, " but found "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string v2, ". You must have the following declaration within the <application> element: <meta-data android:name=\"com.google.android.gms.version\" android:value=\"@integer/google_play_services_version\" />"
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v1, v0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v1
:cond_5c
invoke-static {p0}, Lcom/google/android/gms/common/util/DeviceProperties;->isWearableWithoutPlayStore(Landroid/content/Context;)Z
move-result v0
if-nez v0, :cond_6e
invoke-static {p0}, Lcom/google/android/gms/common/util/DeviceProperties;->isIoT(Landroid/content/Context;)Z
move-result v0
if-nez v0, :cond_6e
const/4 v0, 0x1
:goto_69
invoke-static {p0, v0, p1}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zza(Landroid/content/Context;ZI)I
move-result v0
return v0
:cond_6e
const/4 v0, 0x0
goto :goto_69
:catch_70
move-exception v0
goto :goto_9
.end method
.method public static isGooglePlayServicesUid(Landroid/content/Context;I)Z
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {p0, p1}, Lcom/google/android/gms/common/util/UidVerifier;->isGooglePlayServicesUid(Landroid/content/Context;I)Z
move-result v0
return v0
.end method
.method public static isPlayServicesPossiblyUpdating(Landroid/content/Context;I)Z
.registers 4
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/4 v0, 0x1
const/16 v1, 0x12
if-ne p1, v1, :cond_6
:goto_5
return v0
:cond_6
if-ne p1, v0, :cond_f
const-string v0, "com.google.android.gms"
invoke-static {p0, v0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isUninstalledAppPossiblyUpdating(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
goto :goto_5
:cond_f
const/4 v0, 0x0
goto :goto_5
.end method
.method public static isPlayStorePossiblyUpdating(Landroid/content/Context;I)Z
.registers 3
.annotation runtime Ljava/lang/Deprecated;
.end annotation
const/16 v0, 0x9
if-ne p1, v0, :cond_b
const-string v0, "com.android.vending"
invoke-static {p0, v0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isUninstalledAppPossiblyUpdating(Landroid/content/Context;Ljava/lang/String;)Z
move-result v0
:goto_a
return v0
:cond_b
const/4 v0, 0x0
goto :goto_a
.end method
.method public static isRestrictedUserProfile(Landroid/content/Context;)Z
.registers 4
.annotation build Landroid/annotation/TargetApi;
value = 0x12
.end annotation
invoke-static {}, Lcom/google/android/gms/common/util/PlatformVersion;->isAtLeastJellyBeanMR2()Z
move-result v0
if-eqz v0, :cond_28
const-string v0, "user"
invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/os/UserManager;
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/os/UserManager;->getApplicationRestrictions(Ljava/lang/String;)Landroid/os/Bundle;
move-result-object v0
if-eqz v0, :cond_28
const-string v1, "true"
const-string v2, "restricted_profile"
invoke-virtual {v0, v2}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_28
const/4 v0, 0x1
:goto_27
return v0
:cond_28
const/4 v0, 0x0
goto :goto_27
.end method
.method public static isSidewinderDevice(Landroid/content/Context;)Z
.registers 2
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {p0}, Lcom/google/android/gms/common/util/DeviceProperties;->isSidewinder(Landroid/content/Context;)Z
move-result v0
return v0
.end method
.method public static isTestKeysBuild(Landroid/content/Context;)Z
.registers 5
const/4 v3, 0x1
sget-boolean v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbs:Z
if-nez v0, :cond_2a
:try_start_5
invoke-static {p0}, Lcom/google/android/gms/common/wrappers/Wrappers;->packageManager(Landroid/content/Context;)Lcom/google/android/gms/common/wrappers/PackageManagerWrapper;
move-result-object v0
const-string v1, "com.google.android.gms"
const/16 v2, 0x40
invoke-virtual {v0, v1, v2}, Lcom/google/android/gms/common/wrappers/PackageManagerWrapper;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v0
invoke-static {p0}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/common/GoogleSignatureVerifier;
move-result-object v1
if-eqz v0, :cond_2d
const/4 v2, 0x0
invoke-virtual {v1, v0, v2}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->isGooglePublicSignedPackage(Landroid/content/pm/PackageInfo;Z)Z
move-result v2
if-nez v2, :cond_2d
const/4 v2, 0x1
invoke-virtual {v1, v0, v2}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->isGooglePublicSignedPackage(Landroid/content/pm/PackageInfo;Z)Z
move-result v0
if-eqz v0, :cond_2d
const/4 v0, 0x1
sput-boolean v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbr:Z
:try_end_28
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_5 .. :try_end_28} :catch_31
.catchall {:try_start_5 .. :try_end_28} :catchall_35
:goto_28
sput-boolean v3, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbs:Z
:cond_2a
:goto_2a
sget-boolean v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbr:Z
return v0
:cond_2d
const/4 v0, 0x0
:try_start_2e
sput-boolean v0, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbr:Z
:try_end_30
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_2e .. :try_end_30} :catch_31
.catchall {:try_start_2e .. :try_end_30} :catchall_35
goto :goto_28
:catch_31
move-exception v0
sput-boolean v3, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbs:Z
goto :goto_2a
:catchall_35
move-exception v0
sput-boolean v3, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->zzbs:Z
throw v0
.end method
.method static isUninstalledAppPossiblyUpdating(Landroid/content/Context;Ljava/lang/String;)Z
.registers 7
.annotation build Landroid/annotation/TargetApi;
value = 0x15
.end annotation
const/4 v1, 0x1
const/4 v2, 0x0
const-string v0, "com.google.android.gms"
invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v3
invoke-static {}, Lcom/google/android/gms/common/util/PlatformVersion;->isAtLeastLollipop()Z
move-result v0
if-eqz v0, :cond_39
:try_start_e
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
invoke-virtual {v0}, Landroid/content/pm/PackageManager;->getPackageInstaller()Landroid/content/pm/PackageInstaller;
move-result-object v0
invoke-virtual {v0}, Landroid/content/pm/PackageInstaller;->getAllSessions()Ljava/util/List;
:try_end_19
.catch Ljava/lang/Exception; {:try_start_e .. :try_end_19} :catch_36
move-result-object v0
invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v4
:cond_1e
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_39
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/content/pm/PackageInstaller$SessionInfo;
invoke-virtual {v0}, Landroid/content/pm/PackageInstaller$SessionInfo;->getAppPackageName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_1e
move v0, v1
:goto_35
return v0
:catch_36
move-exception v0
move v0, v2
goto :goto_35
:cond_39
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
const/16 v4, 0x2000
:try_start_3f
invoke-virtual {v0, p1, v4}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v0
if-eqz v3, :cond_48
iget-boolean v0, v0, Landroid/content/pm/ApplicationInfo;->enabled:Z
goto :goto_35
:cond_48
iget-boolean v0, v0, Landroid/content/pm/ApplicationInfo;->enabled:Z
if-eqz v0, :cond_54
invoke-static {p0}, Lcom/google/android/gms/common/GooglePlayServicesUtilLight;->isRestrictedUserProfile(Landroid/content/Context;)Z
:try_end_4f
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_3f .. :try_end_4f} :catch_56
move-result v0
if-nez v0, :cond_54
move v0, v1
goto :goto_35
:cond_54
move v0, v2
goto :goto_35
:catch_56
move-exception v0
move v0, v2
goto :goto_35
.end method
.method public static isUserBuildDevice()Z
.registers 1
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {}, Lcom/google/android/gms/common/util/DeviceProperties;->isUserBuild()Z
move-result v0
return v0
.end method
.method public static isUserRecoverableError(I)Z
.registers 2
.annotation runtime Ljava/lang/Deprecated;
.end annotation
packed-switch p0, :pswitch_data_8
:pswitch_3
const/4 v0, 0x0
:goto_4
return v0
:pswitch_5
const/4 v0, 0x1
goto :goto_4
nop
:pswitch_data_8
.packed-switch 0x1
:pswitch_5
:pswitch_5
:pswitch_5
:pswitch_3
:pswitch_3
:pswitch_3
:pswitch_3
:pswitch_3
:pswitch_5
.end packed-switch
.end method
.method public static uidHasPackageName(Landroid/content/Context;ILjava/lang/String;)Z
.registers 4
.annotation build Landroid/annotation/TargetApi;
value = 0x13
.end annotation
.annotation runtime Ljava/lang/Deprecated;
.end annotation
invoke-static {p0, p1, p2}, Lcom/google/android/gms/common/util/UidVerifier;->uidHasPackageName(Landroid/content/Context;ILjava/lang/String;)Z
move-result v0
return v0
.end method
.method private static zza(Landroid/content/Context;ZI)I
.registers 11
.annotation build Lcom/google/android/gms/common/util/VisibleForTesting;
.end annotation
const/16 v3, 0x9
const/4 v1, 0x1
const/4 v2, 0x0
if-ltz p2, :cond_2d
move v0, v1
:goto_7
invoke-static {v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkArgument(Z)V
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v4
const/4 v0, 0x0
if-eqz p1, :cond_19
:try_start_11
const-string v0, "com.android.vending"
const/16 v5, 0x2040
invoke-virtual {v4, v0, v5}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
:try_end_18
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_11 .. :try_end_18} :catch_2f
move-result-object v0
:cond_19
:try_start_19
const-string v5, "com.google.android.gms"
const/16 v6, 0x40
invoke-virtual {v4, v5, v6}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
:try_end_20
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_19 .. :try_end_20} :catch_90
move-result-object v5
invoke-static {p0}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->getInstance(Landroid/content/Context;)Lcom/google/android/gms/common/GoogleSignatureVerifier;
move-result-object v6
invoke-virtual {v6, v5, v1}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->isGooglePublicSignedPackage(Landroid/content/pm/PackageInfo;Z)Z
move-result v7
if-nez v7, :cond_32
move v1, v3
:goto_2c
return v1
:cond_2d
move v0, v2
goto :goto_7
:catch_2f
move-exception v0
move v1, v3
goto :goto_2c
:cond_32
if-eqz p1, :cond_4a
invoke-virtual {v6, v0, v1}, Lcom/google/android/gms/common/GoogleSignatureVerifier;->isGooglePublicSignedPackage(Landroid/content/pm/PackageInfo;Z)Z
move-result v6
if-eqz v6, :cond_48
iget-object v0, v0, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
aget-object v0, v0, v2
iget-object v6, v5, Landroid/content/pm/PackageInfo;->signatures:[Landroid/content/pm/Signature;
aget-object v6, v6, v2
invoke-virtual {v0, v6}, Landroid/content/pm/Signature;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_4a
:cond_48
move v1, v3
goto :goto_2c
:cond_4a
iget v0, v5, Landroid/content/pm/PackageInfo;->versionCode:I
invoke-static {v0}, Lcom/google/android/gms/common/util/GmsVersionParser;->parseBuildVersion(I)I
move-result v0
invoke-static {p2}, Lcom/google/android/gms/common/util/GmsVersionParser;->parseBuildVersion(I)I
move-result v3
if-ge v0, v3, :cond_74
iget v0, v5, Landroid/content/pm/PackageInfo;->versionCode:I
const/16 v1, 0x4d
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "Google Play services out of date. Requires "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " but found "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const/4 v1, 0x2
goto :goto_2c
:cond_74
iget-object v0, v5, Landroid/content/pm/PackageInfo;->applicationInfo:Landroid/content/pm/ApplicationInfo;
if-nez v0, :cond_7f
:try_start_78
const-string v0, "com.google.android.gms"
const/4 v3, 0x0
invoke-virtual {v4, v0, v3}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
:try_end_7e
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_78 .. :try_end_7e} :catch_85
move-result-object v0
:cond_7f
iget-boolean v0, v0, Landroid/content/pm/ApplicationInfo;->enabled:Z
if-nez v0, :cond_8e
const/4 v1, 0x3
goto :goto_2c
:catch_85
move-exception v0
const-string v2, "GooglePlayServicesUtil"
const-string v3, "Google Play services missing when getting application info."
invoke-static {v2, v3, v0}, Landroid/util/Log;->wtf(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
goto :goto_2c
:cond_8e
move v1, v2
goto :goto_2c
:catch_90
move-exception v0
goto :goto_2c
.end method