bq.smali
.class public final Lcom/loc/bq;
.super Ljava/lang/Object;
# instance fields
.field a:Ljava/util/Hashtable;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Hashtable",
"<",
"Ljava/lang/String;",
"Lorg/json/JSONObject;",
">;"
}
.end annotation
.end field
.field b:Ljava/util/Hashtable;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Hashtable",
"<",
"Ljava/lang/String;",
"Lorg/json/JSONObject;",
">;"
}
.end annotation
.end field
.field c:Z
.field private d:Landroid/content/Context;
.field private e:Ljava/lang/String;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 5
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/Hashtable;
invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
iput-object v0, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
new-instance v0, Ljava/util/Hashtable;
invoke-direct {v0}, Ljava/util/Hashtable;-><init>()V
iput-object v0, p0, Lcom/loc/bq;->b:Ljava/util/Hashtable;
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/loc/bq;->c:Z
const/4 v0, 0x0
iput-object v0, p0, Lcom/loc/bq;->d:Landroid/content/Context;
const-string/jumbo v0, "2.0.201501131131"
const-string/jumbo v1, "."
const-string/jumbo v2, ""
invoke-virtual {v0, v1, v2}, Ljava/lang/String;->replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/loc/bq;->e:Ljava/lang/String;
if-eqz p1, :cond_2e
invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
iput-object v0, p0, Lcom/loc/bq;->d:Landroid/content/Context;
:cond_2e
return-void
.end method
.method private a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;IJZ)V
.registers 15
const/4 v6, 0x1
const/4 v5, 0x0
sget-boolean v0, Lcom/loc/az;->a:Z
if-nez v0, :cond_7
:cond_6
:goto_6
return-void
:cond_7
if-eqz p1, :cond_6
invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-nez v0, :cond_6
iget-object v0, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v0, p2}, Ljava/util/Hashtable;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/json/JSONObject;
if-nez v0, :cond_80
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
move-object v2, v0
:goto_1f
:try_start_1f
const-string/jumbo v0, "x"
invoke-virtual {v2, v0, p3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string/jumbo v0, "time"
invoke-virtual {v2, v0, p5, p6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
const-string/jumbo v0, "num"
const/4 v1, 0x0
invoke-virtual {v2, v0, v1}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I
:try_end_32
.catch Ljava/lang/Throwable; {:try_start_1f .. :try_end_32} :catch_71
move-result v0
add-int/2addr v0, p4
:try_start_34
const-string/jumbo v1, "num"
invoke-virtual {v2, v1, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
:try_end_3a
.catch Ljava/lang/Throwable; {:try_start_34 .. :try_end_3a} :catch_7e
:goto_3a
iget-object v1, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v1, p2, v2}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
const/16 v1, 0x78
if-lt v0, v1, :cond_5e
sget-boolean v0, Lcom/loc/ca;->k:Z
if-nez v0, :cond_5e
const-string/jumbo v0, "pref"
const-string/jumbo v1, "ddex"
invoke-static {p1, v0, v1, v5}, Lcom/loc/ci;->b(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)Z
move-result v0
if-nez v0, :cond_5e
sput-boolean v6, Lcom/loc/ca;->k:Z
const-string/jumbo v0, "pref"
const-string/jumbo v1, "ddex"
invoke-static {p1, v0, v1, v6}, Lcom/loc/ci;->a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Z)V
:cond_5e
if-eqz p7, :cond_6
:try_start_60
iget-object v0, p0, Lcom/loc/bq;->b:Ljava/util/Hashtable;
invoke-virtual {v0, p2, v2}, Ljava/util/Hashtable;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_65
.catch Ljava/lang/Throwable; {:try_start_60 .. :try_end_65} :catch_66
goto :goto_6
:catch_66
move-exception v0
const-string/jumbo v1, "HeatMap"
const-string/jumbo v2, "update"
invoke-static {v0, v1, v2}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_6
:catch_71
move-exception v0
move-object v1, v0
move v0, p4
:goto_74
const-string/jumbo v3, "HeatMap"
const-string/jumbo v4, "update1"
invoke-static {v1, v3, v4}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_3a
:catch_7e
move-exception v1
goto :goto_74
:cond_80
move-object v2, v0
goto :goto_1f
.end method
# virtual methods
.method public final a()V
.registers 12
const/4 v0, 0x0
const/4 v10, 0x0
iget-object v1, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v1}, Ljava/util/Hashtable;->isEmpty()Z
move-result v1
if-nez v1, :cond_f
iget-object v1, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v1}, Ljava/util/Hashtable;->clear()V
:cond_f
iget-object v1, p0, Lcom/loc/bq;->d:Landroid/content/Context;
if-eqz v1, :cond_e2
:try_start_13
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
iget-object v1, p0, Lcom/loc/bq;->d:Landroid/content/Context;
const-string/jumbo v2, "hmdb"
const/4 v4, 0x0
const/4 v5, 0x0
invoke-virtual {v1, v2, v4, v5}, Landroid/content/Context;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase;
:try_end_22
.catch Ljava/lang/Throwable; {:try_start_13 .. :try_end_22} :catch_11b
.catchall {:try_start_13 .. :try_end_22} :catchall_104
move-result-object v2
:try_start_23
const-string/jumbo v0, "CREATE TABLE IF NOT EXISTS hm"
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/loc/bq;->e:Ljava/lang/String;
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo v0, " (hash VARCHAR PRIMARY KEY, num INTEGER, extra VARCHAR, time VARCHAR);"
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
const/4 v0, 0x0
invoke-virtual {v3}, Ljava/lang/StringBuilder;->length()I
move-result v1
invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
iget-object v0, p0, Lcom/loc/bq;->b:Ljava/util/Hashtable;
invoke-virtual {v0}, Ljava/util/Hashtable;->entrySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v4
:cond_50
:goto_50
invoke-interface {v4}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_f2
invoke-interface {v4}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/Map$Entry;
invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lorg/json/JSONObject;
const-string/jumbo v5, "x"
invoke-virtual {v0, v5}, Lorg/json/JSONObject;->optString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
invoke-static {v5}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v6
if-nez v6, :cond_50
invoke-static {v1}, Lcom/loc/cj;->c(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-static {v5}, Lcom/loc/cj;->c(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
const-string/jumbo v6, "REPLACE INTO "
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo v6, "hm"
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v6
iget-object v7, p0, Lcom/loc/bq;->e:Ljava/lang/String;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo v6, " VALUES (?, ?, ?, ?);"
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 v6, 0x4
new-array v6, v6, [Ljava/lang/Object;
const/4 v7, 0x0
aput-object v1, v6, v7
const/4 v1, 0x1
const-string/jumbo v7, "num"
const/4 v8, 0x1
invoke-virtual {v0, v7, v8}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;I)I
move-result v7
invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v7
aput-object v7, v6, v1
const/4 v1, 0x2
aput-object v5, v6, v1
const/4 v1, 0x3
const-string/jumbo v5, "time"
invoke-static {}, Lcom/loc/cj;->a()J
move-result-wide v8
invoke-virtual {v0, v5, v8, v9}, Lorg/json/JSONObject;->optLong(Ljava/lang/String;J)J
move-result-wide v8
invoke-static {v8, v9}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v0
aput-object v0, v6, v1
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v2, v0, v6}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;[Ljava/lang/Object;)V
const/4 v0, 0x0
invoke-virtual {v3}, Ljava/lang/StringBuilder;->length()I
move-result v1
invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
:try_end_ce
.catch Ljava/lang/Throwable; {:try_start_23 .. :try_end_ce} :catch_cf
.catchall {:try_start_23 .. :try_end_ce} :catchall_119
goto :goto_50
:catch_cf
move-exception v0
move-object v0, v2
:goto_d1
if-eqz v0, :cond_e2
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v1
if-eqz v1, :cond_e2
invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:cond_e2
:goto_e2
iget-object v0, p0, Lcom/loc/bq;->b:Ljava/util/Hashtable;
invoke-virtual {v0}, Ljava/util/Hashtable;->isEmpty()Z
move-result v0
if-nez v0, :cond_ef
iget-object v0, p0, Lcom/loc/bq;->b:Ljava/util/Hashtable;
invoke-virtual {v0}, Ljava/util/Hashtable;->clear()V
:cond_ef
iput-boolean v10, p0, Lcom/loc/bq;->c:Z
return-void
:cond_f2
if-eqz v2, :cond_e2
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_e2
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
goto :goto_e2
:catchall_104
move-exception v1
move-object v2, v0
move-object v0, v1
:goto_107
if-eqz v2, :cond_118
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v1
if-eqz v1, :cond_118
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:cond_118
throw v0
:catchall_119
move-exception v0
goto :goto_107
:catch_11b
move-exception v1
goto :goto_d1
.end method
.method public final a(Landroid/content/Context;)V
.registers 14
const/4 v11, 0x1
const/4 v1, 0x0
sget-boolean v0, Lcom/loc/az;->a:Z
if-nez v0, :cond_7
:cond_6
:goto_6
return-void
:cond_7
iget-boolean v0, p0, Lcom/loc/bq;->c:Z
if-nez v0, :cond_6
:try_start_b
sget-boolean v0, Lcom/loc/az;->a:Z
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_b .. :try_end_d} :catch_4e
if-eqz v0, :cond_11
if-nez p1, :cond_14
:cond_11
:goto_11
iput-boolean v11, p0, Lcom/loc/bq;->c:Z
goto :goto_6
:cond_14
:try_start_14
const-string/jumbo v0, "hmdb"
const/4 v2, 0x0
const/4 v3, 0x0
invoke-virtual {p1, v0, v2, v3}, Landroid/content/Context;->openOrCreateDatabase(Ljava/lang/String;ILandroid/database/sqlite/SQLiteDatabase$CursorFactory;)Landroid/database/sqlite/SQLiteDatabase;
:try_end_1c
.catch Ljava/lang/Throwable; {:try_start_14 .. :try_end_1c} :catch_128
.catchall {:try_start_14 .. :try_end_1c} :catchall_10d
move-result-object v10
:try_start_1d
const-string/jumbo v0, "hm"
invoke-static {v10, v0}, Lcom/loc/cj;->a(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_59
if-eqz v10, :cond_11
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_11
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:try_end_31
.catch Ljava/lang/Throwable; {:try_start_1d .. :try_end_31} :catch_32
.catchall {:try_start_1d .. :try_end_31} :catchall_120
goto :goto_11
:catch_32
move-exception v0
move-object v2, v10
:goto_34
:try_start_34
const-string/jumbo v3, "DB"
const-string/jumbo v4, "fetchHm p2"
invoke-static {v0, v3, v4}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
:try_end_3d
.catchall {:try_start_34 .. :try_end_3d} :catchall_125
if-eqz v1, :cond_42
:try_start_3f
invoke-interface {v1}, Landroid/database/Cursor;->close()V
:cond_42
if-eqz v2, :cond_11
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_11
invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:try_end_4d
.catch Ljava/lang/Throwable; {:try_start_3f .. :try_end_4d} :catch_4e
goto :goto_11
:catch_4e
move-exception v0
const-string/jumbo v1, "HeatMap"
const-string/jumbo v2, "loadDB"
invoke-static {v0, v1, v2}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_11
:cond_59
:try_start_59
invoke-static {}, Lcom/loc/cj;->a()J
move-result-wide v2
const-wide/32 v4, 0x48190800
sub-long/2addr v2, v4
new-instance v4, Ljava/lang/StringBuilder;
invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v0, "SELECT hash, num, extra, time FROM "
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo v0, "hm"
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v5, p0, Lcom/loc/bq;->e:Ljava/lang/String;
invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo v0, " WHERE time > "
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
const-string/jumbo v0, " ORDER BY num DESC LIMIT 0,"
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/16 v0, 0x1f4
invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string/jumbo v2, ";"
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:try_end_94
.catch Ljava/lang/Throwable; {:try_start_59 .. :try_end_94} :catch_32
.catchall {:try_start_59 .. :try_end_94} :catchall_120
:try_start_94
invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const/4 v2, 0x0
invoke-virtual {v10, v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
:try_end_9c
.catch Ljava/lang/Throwable; {:try_start_94 .. :try_end_9c} :catch_f1
.catchall {:try_start_94 .. :try_end_9c} :catchall_120
move-result-object v1
move-object v9, v1
:goto_9e
const/4 v0, 0x0
:try_start_9f
invoke-virtual {v4}, Ljava/lang/StringBuilder;->length()I
move-result v1
invoke-virtual {v4, v0, v1}, Ljava/lang/StringBuilder;->delete(II)Ljava/lang/StringBuilder;
if-eqz v9, :cond_df
invoke-interface {v9}, Landroid/database/Cursor;->moveToFirst()Z
move-result v0
if-eqz v0, :cond_df
:cond_ae
const/4 v0, 0x0
invoke-interface {v9, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v3
const/4 v0, 0x1
invoke-interface {v9, v0}, Landroid/database/Cursor;->getInt(I)I
move-result v5
const/4 v0, 0x2
invoke-interface {v9, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
move-result-object v4
const/4 v0, 0x3
invoke-interface {v9, v0}, Landroid/database/Cursor;->getLong(I)J
move-result-wide v6
const-string/jumbo v0, "{"
invoke-virtual {v4, v0}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_d3
invoke-static {v3}, Lcom/loc/cj;->d(Ljava/lang/String;)Ljava/lang/String;
move-result-object v3
invoke-static {v4}, Lcom/loc/cj;->d(Ljava/lang/String;)Ljava/lang/String;
move-result-object v4
:cond_d3
const/4 v8, 0x0
move-object v1, p0
move-object v2, p1
invoke-direct/range {v1 .. v8}, Lcom/loc/bq;->a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;IJZ)V
invoke-interface {v9}, Landroid/database/Cursor;->moveToNext()Z
:try_end_dc
.catch Ljava/lang/Throwable; {:try_start_9f .. :try_end_dc} :catch_12c
.catchall {:try_start_9f .. :try_end_dc} :catchall_122
move-result v0
if-nez v0, :cond_ae
:cond_df
if-eqz v9, :cond_e4
:try_start_e1
invoke-interface {v9}, Landroid/database/Cursor;->close()V
:cond_e4
if-eqz v10, :cond_11
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v0
if-eqz v0, :cond_11
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:try_end_ef
.catch Ljava/lang/Throwable; {:try_start_e1 .. :try_end_ef} :catch_4e
goto/16 :goto_11
:catch_f1
move-exception v0
:try_start_f2
const-string/jumbo v2, "DB"
const-string/jumbo v3, "fetchHm"
invoke-static {v0, v2, v3}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
invoke-virtual {v0}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_10b
const-string/jumbo v2, "no such table"
invoke-virtual {v0, v2}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
:try_end_10b
.catch Ljava/lang/Throwable; {:try_start_f2 .. :try_end_10b} :catch_32
.catchall {:try_start_f2 .. :try_end_10b} :catchall_120
:cond_10b
move-object v9, v1
goto :goto_9e
:catchall_10d
move-exception v0
move-object v10, v1
:goto_10f
if-eqz v1, :cond_114
:try_start_111
invoke-interface {v1}, Landroid/database/Cursor;->close()V
:cond_114
if-eqz v10, :cond_11f
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
move-result v1
if-eqz v1, :cond_11f
invoke-virtual {v10}, Landroid/database/sqlite/SQLiteDatabase;->close()V
:cond_11f
throw v0
:try_end_120
.catch Ljava/lang/Throwable; {:try_start_111 .. :try_end_120} :catch_4e
:catchall_120
move-exception v0
goto :goto_10f
:catchall_122
move-exception v0
move-object v1, v9
goto :goto_10f
:catchall_125
move-exception v0
move-object v10, v2
goto :goto_10f
:catch_128
move-exception v0
move-object v2, v1
goto/16 :goto_34
:catch_12c
move-exception v0
move-object v1, v9
move-object v2, v10
goto/16 :goto_34
.end method
.method public final a(Landroid/content/Context;Ljava/lang/String;Lcom/autonavi/aps/amapapi/model/AMapLocationServer;)V
.registers 13
const/4 v3, 0x0
invoke-static {p3}, Lcom/loc/cj;->a(Lcom/autonavi/aps/amapapi/model/AMapLocationServer;)Z
move-result v0
if-eqz v0, :cond_d
if-eqz p1, :cond_d
sget-boolean v0, Lcom/loc/az;->a:Z
if-nez v0, :cond_e
:cond_d
:goto_d
return-void
:cond_e
iget-object v0, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v0}, Ljava/util/Hashtable;->size()I
move-result v0
const/16 v1, 0x1f4
if-le v0, v1, :cond_2c
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLatitude()D
move-result-wide v0
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLongitude()D
move-result-wide v2
invoke-static {v0, v1, v2, v3}, Lcom/loc/bc;->a(DD)Ljava/lang/String;
move-result-object v3
iget-object v0, p0, Lcom/loc/bq;->a:Ljava/util/Hashtable;
invoke-virtual {v0, v3}, Ljava/util/Hashtable;->containsKey(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_d
:cond_2c
if-nez v3, :cond_3a
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLatitude()D
move-result-wide v0
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLongitude()D
move-result-wide v2
invoke-static {v0, v1, v2, v3}, Lcom/loc/bc;->a(DD)Ljava/lang/String;
move-result-object v3
:cond_3a
new-instance v0, Lorg/json/JSONObject;
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
:try_start_3f
const-string/jumbo v1, "key"
invoke-virtual {v0, v1, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
const-string/jumbo v1, "lat"
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLatitude()D
move-result-wide v4
invoke-virtual {v0, v1, v4, v5}, Lorg/json/JSONObject;->put(Ljava/lang/String;D)Lorg/json/JSONObject;
const-string/jumbo v1, "lon"
invoke-virtual {p3}, Lcom/autonavi/aps/amapapi/model/AMapLocationServer;->getLongitude()D
move-result-wide v4
invoke-virtual {v0, v1, v4, v5}, Lorg/json/JSONObject;->put(Ljava/lang/String;D)Lorg/json/JSONObject;
invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v4
const/4 v5, 0x1
invoke-static {}, Lcom/loc/cj;->a()J
move-result-wide v6
const/4 v8, 0x1
move-object v1, p0
move-object v2, p1
invoke-direct/range {v1 .. v8}, Lcom/loc/bq;->a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;IJZ)V
:try_end_68
.catch Ljava/lang/Throwable; {:try_start_3f .. :try_end_68} :catch_69
goto :goto_d
:catch_69
move-exception v0
const-string/jumbo v1, "HeatMap"
const-string/jumbo v2, "update"
invoke-static {v0, v1, v2}, Lcom/loc/ca;->a(Ljava/lang/Throwable;Ljava/lang/String;Ljava/lang/String;)V
goto :goto_d
.end method