AppEventsLoggerImpl$3.smali
.class final Lcom/facebook/appevents/AppEventsLoggerImpl$3;
.super Ljava/lang/Object;
.source "AppEventsLoggerImpl.java"
# interfaces
.implements Ljava/lang/Runnable;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/facebook/appevents/AppEventsLoggerImpl;->updateUserProperties(Landroid/os/Bundle;Ljava/lang/String;Lcom/facebook/GraphRequest$Callback;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# instance fields
.field final synthetic val$applicationID:Ljava/lang/String;
.field final synthetic val$callback:Lcom/facebook/GraphRequest$Callback;
.field final synthetic val$parameters:Landroid/os/Bundle;
# direct methods
.method constructor <init>(Landroid/os/Bundle;Ljava/lang/String;Lcom/facebook/GraphRequest$Callback;)V
.registers 4
.line 1
iput-object p1, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$parameters:Landroid/os/Bundle;
iput-object p2, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$applicationID:Ljava/lang/String;
iput-object p3, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$callback:Lcom/facebook/GraphRequest$Callback;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.registers 10
.line 1
invoke-static {}, Lcom/facebook/appevents/AnalyticsUserIDStore;->getUserID()Ljava/lang/String;
move-result-object v0
if-eqz v0, :cond_7f
.line 2
invoke-virtual {v0}, Ljava/lang/String;->isEmpty()Z
move-result v1
if-eqz v1, :cond_d
goto :goto_7f
.line 3
:cond_d
new-instance v1, Landroid/os/Bundle;
invoke-direct {v1}, Landroid/os/Bundle;-><init>()V
const-string v2, "user_unique_id"
.line 4
invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
.line 5
iget-object v0, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$parameters:Landroid/os/Bundle;
const-string v2, "custom_data"
invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;->putBundle(Ljava/lang/String;Landroid/os/Bundle;)V
.line 6
invoke-static {}, Lcom/facebook/FacebookSdk;->getApplicationContext()Landroid/content/Context;
move-result-object v0
.line 7
invoke-static {v0}, Lcom/facebook/internal/AttributionIdentifiers;->getAttributionIdentifiers(Landroid/content/Context;)Lcom/facebook/internal/AttributionIdentifiers;
move-result-object v0
if-eqz v0, :cond_37
.line 8
invoke-virtual {v0}, Lcom/facebook/internal/AttributionIdentifiers;->getAndroidAdvertiserId()Ljava/lang/String;
move-result-object v2
if-eqz v2, :cond_37
.line 9
invoke-virtual {v0}, Lcom/facebook/internal/AttributionIdentifiers;->getAndroidAdvertiserId()Ljava/lang/String;
move-result-object v0
const-string v2, "advertiser_id"
.line 10
invoke-virtual {v1, v2, v0}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
.line 11
:cond_37
new-instance v6, Landroid/os/Bundle;
invoke-direct {v6}, Landroid/os/Bundle;-><init>()V
.line 12
:try_start_3c
invoke-static {v1}, Lcom/facebook/internal/BundleJSONConverter;->convertToJSON(Landroid/os/Bundle;)Lorg/json/JSONObject;
move-result-object v0
.line 13
new-instance v1, Lorg/json/JSONArray;
invoke-direct {v1}, Lorg/json/JSONArray;-><init>()V
.line 14
invoke-virtual {v1, v0}, Lorg/json/JSONArray;->put(Ljava/lang/Object;)Lorg/json/JSONArray;
const-string v0, "data"
.line 15
invoke-virtual {v1}, Lorg/json/JSONArray;->toString()Ljava/lang/String;
move-result-object v1
.line 16
invoke-virtual {v6, v0, v1}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
:try_end_51
.catch Lorg/json/JSONException; {:try_start_3c .. :try_end_51} :catch_76
.line 17
new-instance v0, Lcom/facebook/GraphRequest;
.line 18
invoke-static {}, Lcom/facebook/AccessToken;->getCurrentAccessToken()Lcom/facebook/AccessToken;
move-result-object v4
sget-object v1, Ljava/util/Locale;->US:Ljava/util/Locale;
const/4 v2, 0x1
new-array v3, v2, [Ljava/lang/Object;
const/4 v5, 0x0
iget-object v7, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$applicationID:Ljava/lang/String;
aput-object v7, v3, v5
const-string v5, "%s/user_properties"
.line 19
invoke-static {v1, v5, v3}, Ljava/lang/String;->format(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v5
sget-object v7, Lcom/facebook/HttpMethod;->POST:Lcom/facebook/HttpMethod;
iget-object v8, p0, Lcom/facebook/appevents/AppEventsLoggerImpl$3;->val$callback:Lcom/facebook/GraphRequest$Callback;
move-object v3, v0
invoke-direct/range {v3 .. v8}, Lcom/facebook/GraphRequest;-><init>(Lcom/facebook/AccessToken;Ljava/lang/String;Landroid/os/Bundle;Lcom/facebook/HttpMethod;Lcom/facebook/GraphRequest$Callback;)V
.line 20
invoke-virtual {v0, v2}, Lcom/facebook/GraphRequest;->setSkipClientToken(Z)V
.line 21
invoke-virtual {v0}, Lcom/facebook/GraphRequest;->executeAsync()Lcom/facebook/GraphRequestAsyncTask;
return-void
:catch_76
move-exception v0
.line 22
new-instance v1, Lcom/facebook/FacebookException;
const-string v2, "Failed to construct request"
invoke-direct {v1, v2, v0}, Lcom/facebook/FacebookException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.line 23
:cond_7f
:goto_7f
sget-object v0, Lcom/facebook/LoggingBehavior;->APP_EVENTS:Lcom/facebook/LoggingBehavior;
.line 24
# getter for: Lcom/facebook/appevents/AppEventsLoggerImpl;->TAG:Ljava/lang/String;
invoke-static {}, Lcom/facebook/appevents/AppEventsLoggerImpl;->access$000()Ljava/lang/String;
move-result-object v1
const-string v2, "AppEventsLogger userID cannot be null or empty"
.line 25
invoke-static {v0, v1, v2}, Lcom/facebook/internal/Logger;->log(Lcom/facebook/LoggingBehavior;Ljava/lang/String;Ljava/lang/String;)V
return-void
.end method