1105 lines
28 KiB
Smali
1105 lines
28 KiB
Smali
.class public Lcom/sina/weibo/sdk/statistic/LogBuilder;
|
|
.super Ljava/lang/Object;
|
|
.source "LogBuilder.java"
|
|
|
|
|
|
# static fields
|
|
.field private static final APPKEY:Ljava/lang/String; = "WEIBO_APPKEY"
|
|
|
|
.field private static final CHANNEL:Ljava/lang/String; = "WEIBO_CHANNEL"
|
|
|
|
.field public static final KEY_AID:Ljava/lang/String; = "aid"
|
|
|
|
.field public static final KEY_APPKEY:Ljava/lang/String; = "appkey"
|
|
|
|
.field public static final KEY_CHANNEL:Ljava/lang/String; = "channel"
|
|
|
|
.field private static final KEY_DURATION:Ljava/lang/String; = "duration"
|
|
|
|
.field public static final KEY_END_TIME:Ljava/lang/String; = "endtime"
|
|
|
|
.field private static final KEY_EVENT_ID:Ljava/lang/String; = "event_id"
|
|
|
|
.field private static final KEY_EXTEND:Ljava/lang/String; = "extend"
|
|
|
|
.field public static final KEY_HASH:Ljava/lang/String; = "key_hash"
|
|
|
|
.field public static final KEY_PACKAGE_NAME:Ljava/lang/String; = "packagename"
|
|
|
|
.field private static final KEY_PAGE_ID:Ljava/lang/String; = "page_id"
|
|
|
|
.field public static final KEY_PLATFORM:Ljava/lang/String; = "platform"
|
|
|
|
.field public static final KEY_START_TIME:Ljava/lang/String; = "starttime"
|
|
|
|
.field private static final KEY_TIME:Ljava/lang/String; = "time"
|
|
|
|
.field public static final KEY_TYPE:Ljava/lang/String; = "type"
|
|
|
|
.field public static final KEY_VERSION:Ljava/lang/String; = "version"
|
|
|
|
.field private static final MAX_COUNT:I = 0x1f4
|
|
|
|
.field public static final MAX_INTERVAL:J = 0x5265c00L
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>()V
|
|
.locals 0
|
|
|
|
.line 21
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method private static addEventData(Lorg/json/JSONObject;Lcom/sina/weibo/sdk/statistic/EventLog;)Lorg/json/JSONObject;
|
|
.locals 5
|
|
|
|
:try_start_0
|
|
const-string v0, "event_id"
|
|
|
|
.line 198
|
|
invoke-virtual {p1}, Lcom/sina/weibo/sdk/statistic/EventLog;->getEvent_id()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {p0, v0, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
.line 199
|
|
invoke-virtual {p1}, Lcom/sina/weibo/sdk/statistic/EventLog;->getExtend()Ljava/util/Map;
|
|
|
|
move-result-object v0
|
|
|
|
if-eqz v0, :cond_3
|
|
|
|
.line 200
|
|
invoke-virtual {p1}, Lcom/sina/weibo/sdk/statistic/EventLog;->getExtend()Ljava/util/Map;
|
|
|
|
move-result-object p1
|
|
|
|
.line 201
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const/4 v1, 0x0
|
|
|
|
.line 203
|
|
invoke-interface {p1}, Ljava/util/Map;->keySet()Ljava/util/Set;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-interface {v2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
|
|
|
|
move-result-object v2
|
|
|
|
:cond_0
|
|
:goto_0
|
|
invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
|
|
|
|
move-result v3
|
|
|
|
if-eqz v3, :cond_2
|
|
|
|
invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
|
|
|
move-result-object v3
|
|
|
|
check-cast v3, Ljava/lang/String;
|
|
|
|
const/16 v4, 0xa
|
|
|
|
if-ge v1, v4, :cond_2
|
|
|
|
.line 205
|
|
invoke-interface {p1, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object v4
|
|
|
|
check-cast v4, Ljava/lang/CharSequence;
|
|
|
|
invoke-static {v4}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v4
|
|
|
|
if-nez v4, :cond_0
|
|
|
|
.line 206
|
|
invoke-virtual {v0}, Ljava/lang/StringBuilder;->length()I
|
|
|
|
move-result v4
|
|
|
|
if-lez v4, :cond_1
|
|
|
|
const-string v4, "|"
|
|
|
|
.line 207
|
|
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
.line 209
|
|
:cond_1
|
|
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
const-string v4, ":"
|
|
|
|
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-interface {p1, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
move-result-object v3
|
|
|
|
check-cast v3, Ljava/lang/String;
|
|
|
|
invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_2
|
|
const-string p1, "extend"
|
|
|
|
.line 216
|
|
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {p0, p1, v0}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
:try_end_0
|
|
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_1
|
|
|
|
:catch_0
|
|
move-exception p1
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 219
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "add event log error."
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-static {v0, p1}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
:cond_3
|
|
:goto_1
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private static buildUploadLogs(Ljava/lang/String;)Ljava/lang/String;
|
|
.locals 3
|
|
|
|
const-string v0, "app_logs"
|
|
|
|
.line 273
|
|
invoke-static {v0}, Lcom/sina/weibo/sdk/statistic/LogFileUtil;->getAppLogPath(Ljava/lang/String;)Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
.line 272
|
|
invoke-static {v0}, Lcom/sina/weibo/sdk/statistic/LogFileUtil;->getAppLogs(Ljava/lang/String;)Ljava/lang/String;
|
|
|
|
move-result-object v0
|
|
|
|
.line 274
|
|
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v1
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v1
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
|
|
.line 277
|
|
:cond_0
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "{applogs:["
|
|
|
|
.line 278
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
.line 279
|
|
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v2
|
|
|
|
if-nez v2, :cond_1
|
|
|
|
.line 280
|
|
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
.line 282
|
|
:cond_1
|
|
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_2
|
|
|
|
.line 283
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
.line 285
|
|
:cond_2
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->length()I
|
|
|
|
move-result p0
|
|
|
|
add-int/lit8 p0, p0, -0x1
|
|
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->charAt(I)C
|
|
|
|
move-result p0
|
|
|
|
const/16 v0, 0x2c
|
|
|
|
if-ne p0, v0, :cond_3
|
|
|
|
.line 286
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->length()I
|
|
|
|
move-result p0
|
|
|
|
add-int/lit8 p0, p0, -0x1
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->length()I
|
|
|
|
move-result v0
|
|
|
|
const-string v2, ""
|
|
|
|
invoke-virtual {v1, p0, v0, v2}, Ljava/lang/StringBuilder;->replace(IILjava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
:cond_3
|
|
const-string p0, "]}"
|
|
|
|
.line 288
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
.line 289
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static getAppKey(Landroid/content/Context;)Ljava/lang/String;
|
|
.locals 3
|
|
|
|
.line 57
|
|
:try_start_0
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
|
|
|
|
move-result-object v0
|
|
|
|
.line 59
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
const/16 v1, 0x80
|
|
|
|
.line 58
|
|
invoke-virtual {v0, p0, v1}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_1
|
|
|
|
.line 62
|
|
iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
|
|
|
|
const-string v0, "WEIBO_APPKEY"
|
|
|
|
invoke-virtual {p0, v0}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 64
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "APPKEY: "
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-static {v0, v1}, Lcom/sina/weibo/sdk/utils/LogUtil;->i(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
.line 65
|
|
invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
const-string p0, "WBAgent"
|
|
|
|
const-string v0, "Could not read WEIBO_APPKEY meta-data from AndroidManifest.xml."
|
|
|
|
.line 67
|
|
invoke-static {p0, v0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
:try_end_0
|
|
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 71
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "Could not read WEIBO_APPKEY meta-data from AndroidManifest.xml."
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-static {v0, p0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
:cond_1
|
|
:goto_0
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static getChannel(Landroid/content/Context;)Ljava/lang/String;
|
|
.locals 3
|
|
|
|
.line 79
|
|
:try_start_0
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
|
|
|
|
move-result-object v0
|
|
|
|
.line 81
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
const/16 v1, 0x80
|
|
|
|
.line 80
|
|
invoke-virtual {v0, p0, v1}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_1
|
|
|
|
.line 84
|
|
iget-object p0, p0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
|
|
|
|
const-string v0, "WEIBO_CHANNEL"
|
|
|
|
invoke-virtual {p0, v0}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 86
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "CHANNEL: "
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-static {v0, v1}, Lcom/sina/weibo/sdk/utils/LogUtil;->i(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
.line 87
|
|
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
|
|
:cond_0
|
|
const-string p0, "WBAgent"
|
|
|
|
const-string v0, "Could not read WEIBO_CHANNEL meta-data from AndroidManifest.xml."
|
|
|
|
.line 89
|
|
invoke-static {p0, v0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
:try_end_0
|
|
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 93
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "Could not read WEIBO_CHANNEL meta-data from AndroidManifest.xml."
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-static {v0, p0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
:cond_1
|
|
:goto_0
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private static getLogInfo(Lcom/sina/weibo/sdk/statistic/PageLog;)Lorg/json/JSONObject;
|
|
.locals 7
|
|
|
|
.line 133
|
|
new-instance v0, Lorg/json/JSONObject;
|
|
|
|
invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V
|
|
|
|
.line 135
|
|
:try_start_0
|
|
sget-object v1, Lcom/sina/weibo/sdk/statistic/LogBuilder$1;->$SwitchMap$com$sina$weibo$sdk$statistic$LogType:[I
|
|
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getType()Lcom/sina/weibo/sdk/statistic/LogType;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v2}, Lcom/sina/weibo/sdk/statistic/LogType;->ordinal()I
|
|
|
|
move-result v2
|
|
|
|
aget v1, v1, v2
|
|
|
|
const/4 v2, 0x0
|
|
|
|
const-wide/16 v3, 0x3e8
|
|
|
|
packed-switch v1, :pswitch_data_0
|
|
|
|
goto/16 :goto_0
|
|
|
|
.line 171
|
|
:pswitch_0
|
|
check-cast p0, Lcom/sina/weibo/sdk/statistic/AdEventLog;
|
|
|
|
const-string v1, "type"
|
|
|
|
.line 172
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "page_id"
|
|
|
|
.line 173
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/AdEventLog;->getmImei()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 174
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/AdEventLog;->getStartTime()J
|
|
|
|
move-result-wide v2
|
|
|
|
invoke-virtual {v0, v1, v2, v3}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "aid"
|
|
|
|
.line 175
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/AdEventLog;->getmAid()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
.line 176
|
|
invoke-static {v0, p0}, Lcom/sina/weibo/sdk/statistic/LogBuilder;->addEventData(Lorg/json/JSONObject;Lcom/sina/weibo/sdk/statistic/EventLog;)Lorg/json/JSONObject;
|
|
|
|
goto/16 :goto_0
|
|
|
|
:pswitch_1
|
|
const-string v1, "type"
|
|
|
|
const/4 v2, 0x4
|
|
|
|
.line 164
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "page_id"
|
|
|
|
.line 165
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getPage_id()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 166
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getStartTime()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "duration"
|
|
|
|
.line 167
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getDuration()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
goto/16 :goto_0
|
|
|
|
:pswitch_2
|
|
const-string v1, "type"
|
|
|
|
const/4 v2, 0x3
|
|
|
|
.line 157
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "page_id"
|
|
|
|
.line 158
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getPage_id()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 159
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getStartTime()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
.line 160
|
|
check-cast p0, Lcom/sina/weibo/sdk/statistic/EventLog;
|
|
|
|
invoke-static {v0, p0}, Lcom/sina/weibo/sdk/statistic/LogBuilder;->addEventData(Lorg/json/JSONObject;Lcom/sina/weibo/sdk/statistic/EventLog;)Lorg/json/JSONObject;
|
|
|
|
goto :goto_0
|
|
|
|
:pswitch_3
|
|
const-string v1, "type"
|
|
|
|
const/4 v2, 0x2
|
|
|
|
.line 150
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "page_id"
|
|
|
|
.line 151
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getPage_id()Ljava/lang/String;
|
|
|
|
move-result-object v2
|
|
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 152
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getStartTime()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "duration"
|
|
|
|
.line 153
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getDuration()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
goto :goto_0
|
|
|
|
:pswitch_4
|
|
const-string v1, "type"
|
|
|
|
const/4 v2, 0x1
|
|
|
|
.line 143
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 145
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getEndTime()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "duration"
|
|
|
|
.line 146
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getDuration()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
|
|
goto :goto_0
|
|
|
|
:pswitch_5
|
|
const-string v1, "type"
|
|
|
|
.line 137
|
|
invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->put(Ljava/lang/String;I)Lorg/json/JSONObject;
|
|
|
|
const-string v1, "time"
|
|
|
|
.line 139
|
|
invoke-virtual {p0}, Lcom/sina/weibo/sdk/statistic/PageLog;->getStartTime()J
|
|
|
|
move-result-wide v5
|
|
|
|
div-long/2addr v5, v3
|
|
|
|
invoke-virtual {v0, v1, v5, v6}, Lorg/json/JSONObject;->put(Ljava/lang/String;J)Lorg/json/JSONObject;
|
|
:try_end_0
|
|
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
const-string v1, "WBAgent"
|
|
|
|
.line 184
|
|
new-instance v2, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v3, "get page log error."
|
|
|
|
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-static {v1, p0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
:goto_0
|
|
return-object v0
|
|
|
|
nop
|
|
|
|
:pswitch_data_0
|
|
.packed-switch 0x1
|
|
:pswitch_5
|
|
:pswitch_4
|
|
:pswitch_3
|
|
:pswitch_2
|
|
:pswitch_1
|
|
:pswitch_0
|
|
.end packed-switch
|
|
.end method
|
|
|
|
.method public static getPageLogs(Ljava/util/concurrent/CopyOnWriteArrayList;)Ljava/lang/String;
|
|
.locals 2
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/util/concurrent/CopyOnWriteArrayList<",
|
|
"Lcom/sina/weibo/sdk/statistic/PageLog;",
|
|
">;)",
|
|
"Ljava/lang/String;"
|
|
}
|
|
.end annotation
|
|
|
|
.line 119
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
.line 120
|
|
invoke-virtual {p0}, Ljava/util/concurrent/CopyOnWriteArrayList;->iterator()Ljava/util/Iterator;
|
|
|
|
move-result-object p0
|
|
|
|
:goto_0
|
|
invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z
|
|
|
|
move-result v1
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
|
|
|
|
move-result-object v1
|
|
|
|
check-cast v1, Lcom/sina/weibo/sdk/statistic/PageLog;
|
|
|
|
.line 121
|
|
invoke-static {v1}, Lcom/sina/weibo/sdk/statistic/LogBuilder;->getLogInfo(Lcom/sina/weibo/sdk/statistic/PageLog;)Lorg/json/JSONObject;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v1}, Lorg/json/JSONObject;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
const-string v1, ","
|
|
|
|
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
goto :goto_0
|
|
|
|
.line 123
|
|
:cond_0
|
|
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static getValidUploadLogs(Ljava/lang/String;)Ljava/util/List;
|
|
.locals 12
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"(",
|
|
"Ljava/lang/String;",
|
|
")",
|
|
"Ljava/util/List<",
|
|
"Lorg/json/JSONArray;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
|
|
.line 230
|
|
invoke-static {p0}, Lcom/sina/weibo/sdk/statistic/LogBuilder;->buildUploadLogs(Ljava/lang/String;)Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
.line 231
|
|
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
|
|
|
|
move-result v0
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
|
|
.line 235
|
|
:cond_0
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
.line 236
|
|
new-instance v1, Lorg/json/JSONArray;
|
|
|
|
invoke-direct {v1}, Lorg/json/JSONArray;-><init>()V
|
|
|
|
.line 238
|
|
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
|
|
|
|
move-result-wide v2
|
|
|
|
.line 240
|
|
:try_start_0
|
|
new-instance v4, Lorg/json/JSONObject;
|
|
|
|
invoke-direct {v4, p0}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V
|
|
|
|
const-string p0, "applogs"
|
|
|
|
.line 241
|
|
invoke-virtual {v4, p0}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
|
|
|
|
move-result-object p0
|
|
|
|
const/4 v4, 0x0
|
|
|
|
move-object v5, v1
|
|
|
|
const/4 v1, 0x0
|
|
|
|
const/4 v6, 0x0
|
|
|
|
.line 242
|
|
:goto_0
|
|
invoke-virtual {p0}, Lorg/json/JSONArray;->length()I
|
|
|
|
move-result v7
|
|
|
|
if-ge v1, v7, :cond_3
|
|
|
|
.line 243
|
|
invoke-virtual {p0, v1}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;
|
|
|
|
move-result-object v7
|
|
|
|
const-string v8, "time"
|
|
|
|
.line 244
|
|
invoke-virtual {v7, v8}, Lorg/json/JSONObject;->getLong(Ljava/lang/String;)J
|
|
|
|
move-result-wide v8
|
|
|
|
const-wide/16 v10, 0x3e8
|
|
|
|
mul-long v8, v8, v10
|
|
|
|
invoke-static {v2, v3, v8, v9}, Lcom/sina/weibo/sdk/statistic/LogBuilder;->isDataValid(JJ)Z
|
|
|
|
move-result v8
|
|
|
|
if-eqz v8, :cond_2
|
|
|
|
const/16 v8, 0x1f4
|
|
|
|
if-ge v6, v8, :cond_1
|
|
|
|
.line 246
|
|
invoke-virtual {v5, v7}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
|
|
|
|
add-int/lit8 v6, v6, 0x1
|
|
|
|
goto :goto_1
|
|
|
|
.line 249
|
|
:cond_1
|
|
invoke-interface {v0, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 250
|
|
new-instance v5, Lorg/json/JSONArray;
|
|
|
|
invoke-direct {v5}, Lorg/json/JSONArray;-><init>()V
|
|
|
|
const/4 v6, 0x0
|
|
|
|
:cond_2
|
|
:goto_1
|
|
add-int/lit8 v1, v1, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 255
|
|
:cond_3
|
|
invoke-virtual {v5}, Lorg/json/JSONArray;->length()I
|
|
|
|
move-result p0
|
|
|
|
if-lez p0, :cond_4
|
|
|
|
.line 256
|
|
invoke-interface {v0, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
:try_end_0
|
|
.catch Lorg/json/JSONException; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
goto :goto_2
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
.line 259
|
|
invoke-virtual {p0}, Lorg/json/JSONException;->printStackTrace()V
|
|
|
|
:cond_4
|
|
:goto_2
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public static getVersion(Landroid/content/Context;)Ljava/lang/String;
|
|
.locals 3
|
|
|
|
.line 101
|
|
:try_start_0
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
|
|
|
|
move-result-object v0
|
|
|
|
.line 102
|
|
invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-virtual {v0, p0, v1}, Landroid/content/pm/PackageManager;->getPackageInfo(Ljava/lang/String;I)Landroid/content/pm/PackageInfo;
|
|
|
|
move-result-object p0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 103
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "versionName: "
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
iget-object v2, p0, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-static {v0, v1}, Lcom/sina/weibo/sdk/utils/LogUtil;->i(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
.line 104
|
|
iget-object p0, p0, Landroid/content/pm/PackageInfo;->versionName:Ljava/lang/String;
|
|
:try_end_0
|
|
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_0 .. :try_end_0} :catch_0
|
|
|
|
return-object p0
|
|
|
|
:catch_0
|
|
move-exception p0
|
|
|
|
const-string v0, "WBAgent"
|
|
|
|
.line 106
|
|
new-instance v1, Ljava/lang/StringBuilder;
|
|
|
|
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
|
|
|
|
const-string v2, "Could not read versionName from AndroidManifest.xml."
|
|
|
|
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-static {v0, p0}, Lcom/sina/weibo/sdk/utils/LogUtil;->e(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
const/4 p0, 0x0
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method private static isDataValid(JJ)Z
|
|
.locals 1
|
|
|
|
sub-long/2addr p0, p2
|
|
|
|
const-wide/32 p2, 0x5265c00
|
|
|
|
cmp-long v0, p0, p2
|
|
|
|
if-gez v0, :cond_0
|
|
|
|
const/4 p0, 0x1
|
|
|
|
return p0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
return p0
|
|
.end method
|