q.smali
.class Lcom/baidu/mobstat/q;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field static a:Lcom/baidu/mobstat/q;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 28
new-instance v0, Lcom/baidu/mobstat/q;
invoke-direct {v0}, Lcom/baidu/mobstat/q;-><init>()V
sput-object v0, Lcom/baidu/mobstat/q;->a:Lcom/baidu/mobstat/q;
return-void
.end method
.method constructor <init>()V
.registers 1
.prologue
.line 27
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public a(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
.registers 10
.prologue
.line 36
invoke-virtual {p1}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v1
.line 37
const-string v0, "unkown"
.line 40
const-string v2, "android.intent.action.PACKAGE_REMOVED"
invoke-virtual {v2, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-nez v2, :cond_16
.line 42
const/16 v2, 0x2000
:try_start_10
invoke-virtual {v1, p3, v2}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
move-result-object v1
.line 43
iget-object v0, v1, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
:try_end_16
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_10 .. :try_end_16} :catch_6f
.line 49
:cond_16
:goto_16
const-string v1, ""
.line 51
:try_start_18
new-instance v2, Lorg/json/JSONObject;
invoke-direct {v2}, Lorg/json/JSONObject;-><init>()V
.line 52
const-string v3, "n"
invoke-virtual {v2, v3, p3}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 53
const-string v3, "a"
invoke-virtual {v2, v3, p2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 54
const-string v3, "v"
invoke-virtual {v2, v3, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 56
new-instance v0, Lorg/json/JSONArray;
invoke-direct {v0}, Lorg/json/JSONArray;-><init>()V
.line 57
invoke-virtual {v0, v2}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
.line 58
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
.line 59
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
invoke-virtual {v2, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
.line 61
new-instance v3, Lorg/json/JSONObject;
invoke-direct {v3}, Lorg/json/JSONObject;-><init>()V
.line 62
const-string v4, "app_change"
invoke-virtual {v3, v4, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 63
const-string v0, "meta-data"
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-virtual {v3, v0, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
.line 66
invoke-virtual {v3}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/String;->getBytes()[B
move-result-object v0
invoke-static {v0}, Lcom/baidu/mobstat/cm;->a([B)Ljava/lang/String;
:try_end_5e
.catch Ljava/lang/Exception; {:try_start_18 .. :try_end_5e} :catch_74
move-result-object v0
.line 71
:goto_5f
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v1
if-nez v1, :cond_6e
.line 73
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
.line 74
sget-object v1, Lcom/baidu/mobstat/y;->d:Lcom/baidu/mobstat/y;
invoke-virtual {v1, v2, v3, v0}, Lcom/baidu/mobstat/y;->a(JLjava/lang/String;)J
.line 76
:cond_6e
return-void
.line 44
:catch_6f
move-exception v1
.line 45
invoke-static {v1}, Lcom/baidu/mobstat/bd;->a(Ljava/lang/Throwable;)V
goto :goto_16
.line 67
:catch_74
move-exception v0
.line 68
invoke-virtual {v0}, Ljava/lang/Exception;->getMessage()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lcom/baidu/mobstat/bd;->b(Ljava/lang/String;)V
move-object v0, v1
goto :goto_5f
.end method