i$a.smali
.class public final Lcom/garena/location/LocationService/i$a;
.super Ljava/lang/Object;
.source "SourceFile"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/garena/location/LocationService/i;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic a:Lcom/garena/location/LocationService/i;
# direct methods
.method public constructor <init>(Lcom/garena/location/LocationService/i;)V
.registers 2
iput-object p1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final declared-synchronized run()V
.registers 14
monitor-enter p0
:try_start_1
invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
move-result-object v0
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v1
const/4 v2, 0x0
if-ne v0, v1, :cond_e
const/4 v0, 0x1
goto :goto_f
:cond_e
const/4 v0, 0x0
:goto_f
if-eqz v0, :cond_1a
const-string v1, "run"
const-string v3, "com/garena/location/LocationService/LSLocationPool$2"
const-string v4, "runnable"
invoke-static {v1, v3, v4}, Lcom/shopee/monitor/trace/c;->a(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
.line 1
:cond_1a
iget-object v1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 2
iget-boolean v1, v1, Lcom/garena/location/LocationService/i;->d:Z
if-eqz v1, :cond_129
const-string v1, "location - failed to get the location"
new-array v3, v2, [Ljava/lang/Object;
.line 3
invoke-static {v1, v3}, Lcom/garena/android/appkit/logging/a;->A(Ljava/lang/String;[Ljava/lang/Object;)V
const/16 v1, 0x1000
.line 4
iget-object v3, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 5
iget-object v3, v3, Lcom/garena/location/LocationService/i;->f:Landroidx/arch/core/executor/c;
const/16 v4, 0x36b0
const/16 v5, 0x1007
const/16 v6, 0x1004
const/16 v7, 0x1006
const/16 v8, 0x1003
const/4 v9, 0x0
if-eqz v3, :cond_b7
.line 6
invoke-virtual {v3}, Landroidx/arch/core/executor/c;->f()Landroid/location/Location;
move-result-object v3
.line 7
sget-object v10, Lcom/bumptech/glide/load/resource/transcode/f;->b:Landroid/app/Application;
const-string v11, "location"
invoke-virtual {v10, v11}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v10
check-cast v10, Landroid/location/LocationManager;
if-nez v3, :cond_70
if-eqz v10, :cond_70
.line 8
invoke-virtual {v10}, Landroid/location/LocationManager;->getAllProviders()Ljava/util/List;
move-result-object v11
.line 9
invoke-interface {v11}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v11
:cond_54
:goto_54
invoke-interface {v11}, Ljava/util/Iterator;->hasNext()Z
move-result v12
if-eqz v12, :cond_70
invoke-interface {v11}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
.line 10
invoke-virtual {v10, v3}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
move-result-object v3
if-eqz v3, :cond_54
.line 11
iget-object v12, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 12
invoke-virtual {v12, v3}, Lcom/garena/location/LocationService/i;->a(Landroid/location/Location;)Z
move-result v12
if-eqz v12, :cond_70
move-object v3, v9
goto :goto_54
:cond_70
move-object v9, v3
if-nez v9, :cond_a3
if-nez v10, :cond_78
const/16 v1, 0x1001
goto :goto_a3
:cond_78
const-string v1, "gps"
.line 13
invoke-virtual {v10, v1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_8b
const-string v1, "network"
invoke-virtual {v10, v1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_8b
const/16 v1, 0x1006
goto :goto_a3
:cond_8b
const-string v1, "network"
.line 14
invoke-virtual {v10, v1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_96
const/16 v1, 0x1004
goto :goto_a3
:cond_96
const-string v1, "gps"
.line 15
invoke-virtual {v10, v1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
move-result v1
if-nez v1, :cond_a1
const/16 v1, 0x1003
goto :goto_a3
:cond_a1
const/16 v1, 0x1007
.line 16
:cond_a3
:goto_a3
iget-object v3, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
new-instance v10, Lcom/garena/location/LocationService/i$a$a;
invoke-direct {v10, p0}, Lcom/garena/location/LocationService/i$a$a;-><init>(Lcom/garena/location/LocationService/i$a;)V
.line 17
iput-object v10, v3, Lcom/garena/location/LocationService/i;->i:Lcom/garena/android/appkit/thread/a;
.line 18
invoke-static {}, Lcom/garena/android/appkit/thread/f;->c()Lcom/garena/android/appkit/thread/f;
move-result-object v3
iget-object v10, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 19
iget-object v10, v10, Lcom/garena/location/LocationService/i;->i:Lcom/garena/android/appkit/thread/a;
.line 20
invoke-virtual {v3, v10, v4}, Lcom/garena/android/appkit/thread/f;->b(Ljava/lang/Runnable;I)V
.line 21
:cond_b7
iget-object v3, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 22
iget-object v3, v3, Lcom/garena/location/LocationService/i;->a:Lcom/garena/location/LocationService/f;
if-eqz v3, :cond_ee
.line 23
invoke-virtual {v3}, Lcom/garena/location/LocationService/f;->a()Landroid/location/Location;
move-result-object v9
.line 24
iget-object v1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 25
iget-object v3, v1, Lcom/garena/location/LocationService/i;->a:Lcom/garena/location/LocationService/f;
.line 26
iget-boolean v10, v3, Lcom/garena/location/LocationService/f;->i:Z
if-nez v10, :cond_d0
.line 27
iget-boolean v11, v3, Lcom/garena/location/LocationService/f;->j:Z
if-nez v11, :cond_d0
const/16 v5, 0x1006
goto :goto_db
.line 28
:cond_d0
iget-boolean v3, v3, Lcom/garena/location/LocationService/f;->j:Z
if-nez v3, :cond_d7
const/16 v5, 0x1003
goto :goto_db
:cond_d7
if-nez v10, :cond_db
const/16 v5, 0x1004
.line 29
:cond_db
:goto_db
new-instance v3, Lcom/garena/location/LocationService/i$a$b;
invoke-direct {v3, p0}, Lcom/garena/location/LocationService/i$a$b;-><init>(Lcom/garena/location/LocationService/i$a;)V
.line 30
iput-object v3, v1, Lcom/garena/location/LocationService/i;->j:Lcom/garena/android/appkit/thread/a;
.line 31
invoke-static {}, Lcom/garena/android/appkit/thread/f;->c()Lcom/garena/android/appkit/thread/f;
move-result-object v1
iget-object v3, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 32
iget-object v3, v3, Lcom/garena/location/LocationService/i;->j:Lcom/garena/android/appkit/thread/a;
.line 33
invoke-virtual {v1, v3, v4}, Lcom/garena/android/appkit/thread/f;->b(Ljava/lang/Runnable;I)V
move v1, v5
:cond_ee
if-eqz v9, :cond_108
.line 34
iget-object v1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 35
iget-object v1, v1, Lcom/garena/location/LocationService/i;->e:Ljava/util/concurrent/CopyOnWriteArraySet;
.line 36
invoke-virtual {v1}, Ljava/util/concurrent/CopyOnWriteArraySet;->iterator()Ljava/util/Iterator;
move-result-object v1
:goto_f8
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v3
if-eqz v3, :cond_120
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/garena/location/LocationService/j;
.line 37
invoke-interface {v3, v9}, Lcom/garena/location/LocationService/j;->onGetNiceLocation(Landroid/location/Location;)V
goto :goto_f8
.line 38
:cond_108
iget-object v3, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 39
iget-object v3, v3, Lcom/garena/location/LocationService/i;->e:Ljava/util/concurrent/CopyOnWriteArraySet;
.line 40
invoke-virtual {v3}, Ljava/util/concurrent/CopyOnWriteArraySet;->iterator()Ljava/util/Iterator;
move-result-object v3
:goto_110
invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_120
invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Lcom/garena/location/LocationService/j;
.line 41
invoke-interface {v4, v1}, Lcom/garena/location/LocationService/j;->onError(I)V
goto :goto_110
.line 42
:cond_120
iget-object v1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
invoke-static {v1}, Lcom/garena/location/LocationService/i;->b(Lcom/garena/location/LocationService/i;)V
.line 43
iget-object v1, p0, Lcom/garena/location/LocationService/i$a;->a:Lcom/garena/location/LocationService/i;
.line 44
iput-boolean v2, v1, Lcom/garena/location/LocationService/i;->d:Z
:cond_129
if-eqz v0, :cond_134
const-string v0, "run"
const-string v1, "com/garena/location/LocationService/LSLocationPool$2"
const-string v2, "runnable"
.line 45
invoke-static {v0, v1, v2}, Lcom/shopee/monitor/trace/c;->b(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
:try_end_134
.catchall {:try_start_1 .. :try_end_134} :catchall_136
:cond_134
monitor-exit p0
return-void
:catchall_136
move-exception v0
monitor-exit p0
throw v0
.end method