CodelessManager.smali
.class public final Lcom/facebook/appevents/codeless/CodelessManager;
.super Ljava/lang/Object;
.source "CodelessManager.java"
# static fields
.field private static deviceSessionID:Ljava/lang/String;
.field private static isAppIndexingEnabled:Ljava/lang/Boolean;
.field private static volatile isCheckingSession:Ljava/lang/Boolean;
.field private static final isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
.field private static sensorManager:Landroid/hardware/SensorManager;
.field private static viewIndexer:Lcom/facebook/appevents/codeless/ViewIndexer;
.field private static final viewIndexingTrigger:Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
# direct methods
.method static constructor <clinit>()V
.registers 2
.line 1
new-instance v0, Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
invoke-direct {v0}, Lcom/facebook/appevents/codeless/ViewIndexingTrigger;-><init>()V
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexingTrigger:Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
.line 2
new-instance v0, Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x1
invoke-direct {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;-><init>(Z)V
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v0, 0x0
.line 3
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v0
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isAppIndexingEnabled:Ljava/lang/Boolean;
.line 4
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCheckingSession:Ljava/lang/Boolean;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method static synthetic access$000(Ljava/lang/String;)V
.registers 1
.line 1
invoke-static {p0}, Lcom/facebook/appevents/codeless/CodelessManager;->checkCodelessSession(Ljava/lang/String;)V
return-void
.end method
.method static synthetic access$100()Ljava/lang/Boolean;
.registers 1
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isAppIndexingEnabled:Ljava/lang/Boolean;
return-object v0
.end method
.method static synthetic access$102(Ljava/lang/Boolean;)Ljava/lang/Boolean;
.registers 1
.line 1
sput-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->isAppIndexingEnabled:Ljava/lang/Boolean;
return-object p0
.end method
.method static synthetic access$202(Ljava/lang/String;)Ljava/lang/String;
.registers 1
.line 1
sput-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->deviceSessionID:Ljava/lang/String;
return-object p0
.end method
.method static synthetic access$300()Lcom/facebook/appevents/codeless/ViewIndexer;
.registers 1
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexer:Lcom/facebook/appevents/codeless/ViewIndexer;
return-object v0
.end method
.method static synthetic access$402(Ljava/lang/Boolean;)Ljava/lang/Boolean;
.registers 1
.line 1
sput-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->isCheckingSession:Ljava/lang/Boolean;
return-object p0
.end method
.method private static checkCodelessSession(Ljava/lang/String;)V
.registers 3
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCheckingSession:Ljava/lang/Boolean;
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
if-eqz v0, :cond_9
return-void
:cond_9
const/4 v0, 0x1
.line 2
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v0
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCheckingSession:Ljava/lang/Boolean;
.line 3
invoke-static {}, Lcom/facebook/FacebookSdk;->getExecutor()Ljava/util/concurrent/Executor;
move-result-object v0
new-instance v1, Lcom/facebook/appevents/codeless/CodelessManager$2;
invoke-direct {v1, p0}, Lcom/facebook/appevents/codeless/CodelessManager$2;-><init>(Ljava/lang/String;)V
invoke-interface {v0, v1}, Ljava/util/concurrent/Executor;->execute(Ljava/lang/Runnable;)V
return-void
.end method
.method public static disable()V
.registers 2
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
return-void
.end method
.method public static enable()V
.registers 2
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/util/concurrent/atomic/AtomicBoolean;->set(Z)V
return-void
.end method
.method static getCurrentDeviceSessionID()Ljava/lang/String;
.registers 1
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->deviceSessionID:Ljava/lang/String;
if-nez v0, :cond_e
.line 2
invoke-static {}, Ljava/util/UUID;->randomUUID()Ljava/util/UUID;
move-result-object v0
invoke-virtual {v0}, Ljava/util/UUID;->toString()Ljava/lang/String;
move-result-object v0
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->deviceSessionID:Ljava/lang/String;
.line 3
:cond_e
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->deviceSessionID:Ljava/lang/String;
return-object v0
.end method
.method static getIsAppIndexingEnabled()Z
.registers 1
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isAppIndexingEnabled:Ljava/lang/Boolean;
invoke-virtual {v0}, Ljava/lang/Boolean;->booleanValue()Z
move-result v0
return v0
.end method
.method public static onActivityDestroyed(Landroid/app/Activity;)V
.registers 2
.line 1
invoke-static {}, Lcom/facebook/appevents/codeless/CodelessMatcher;->getInstance()Lcom/facebook/appevents/codeless/CodelessMatcher;
move-result-object v0
invoke-virtual {v0, p0}, Lcom/facebook/appevents/codeless/CodelessMatcher;->destroy(Landroid/app/Activity;)V
return-void
.end method
.method public static onActivityPaused(Landroid/app/Activity;)V
.registers 2
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-nez v0, :cond_9
return-void
.line 2
:cond_9
invoke-static {}, Lcom/facebook/appevents/codeless/CodelessMatcher;->getInstance()Lcom/facebook/appevents/codeless/CodelessMatcher;
move-result-object v0
invoke-virtual {v0, p0}, Lcom/facebook/appevents/codeless/CodelessMatcher;->remove(Landroid/app/Activity;)V
.line 3
sget-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexer:Lcom/facebook/appevents/codeless/ViewIndexer;
if-eqz p0, :cond_17
.line 4
invoke-virtual {p0}, Lcom/facebook/appevents/codeless/ViewIndexer;->unschedule()V
.line 5
:cond_17
sget-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->sensorManager:Landroid/hardware/SensorManager;
if-eqz p0, :cond_20
.line 6
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexingTrigger:Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
invoke-virtual {p0, v0}, Landroid/hardware/SensorManager;->unregisterListener(Landroid/hardware/SensorEventListener;)V
:cond_20
return-void
.end method
.method public static onActivityResumed(Landroid/app/Activity;)V
.registers 5
.line 1
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->isCodelessEnabled:Ljava/util/concurrent/atomic/AtomicBoolean;
invoke-virtual {v0}, Ljava/util/concurrent/atomic/AtomicBoolean;->get()Z
move-result v0
if-nez v0, :cond_9
return-void
.line 2
:cond_9
invoke-static {}, Lcom/facebook/appevents/codeless/CodelessMatcher;->getInstance()Lcom/facebook/appevents/codeless/CodelessMatcher;
move-result-object v0
invoke-virtual {v0, p0}, Lcom/facebook/appevents/codeless/CodelessMatcher;->add(Landroid/app/Activity;)V
.line 3
invoke-virtual {p0}, Landroid/app/Activity;->getApplicationContext()Landroid/content/Context;
move-result-object v0
.line 4
invoke-static {}, Lcom/facebook/FacebookSdk;->getApplicationId()Ljava/lang/String;
move-result-object v1
.line 5
invoke-static {v1}, Lcom/facebook/internal/FetchedAppSettingsManager;->getAppSettingsWithoutQuery(Ljava/lang/String;)Lcom/facebook/internal/FetchedAppSettings;
move-result-object v2
if-eqz v2, :cond_5f
.line 6
invoke-virtual {v2}, Lcom/facebook/internal/FetchedAppSettings;->getCodelessEventsEnabled()Z
move-result v3
if-nez v3, :cond_25
goto :goto_5f
:cond_25
const-string v3, "sensor"
.line 7
invoke-virtual {v0, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/hardware/SensorManager;
sput-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->sensorManager:Landroid/hardware/SensorManager;
.line 8
sget-object v0, Lcom/facebook/appevents/codeless/CodelessManager;->sensorManager:Landroid/hardware/SensorManager;
if-nez v0, :cond_34
return-void
:cond_34
const/4 v3, 0x1
.line 9
invoke-virtual {v0, v3}, Landroid/hardware/SensorManager;->getDefaultSensor(I)Landroid/hardware/Sensor;
move-result-object v0
.line 10
new-instance v3, Lcom/facebook/appevents/codeless/ViewIndexer;
invoke-direct {v3, p0}, Lcom/facebook/appevents/codeless/ViewIndexer;-><init>(Landroid/app/Activity;)V
sput-object v3, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexer:Lcom/facebook/appevents/codeless/ViewIndexer;
.line 11
sget-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexingTrigger:Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
new-instance v3, Lcom/facebook/appevents/codeless/CodelessManager$1;
invoke-direct {v3, v2, v1}, Lcom/facebook/appevents/codeless/CodelessManager$1;-><init>(Lcom/facebook/internal/FetchedAppSettings;Ljava/lang/String;)V
invoke-virtual {p0, v3}, Lcom/facebook/appevents/codeless/ViewIndexingTrigger;->setOnShakeListener(Lcom/facebook/appevents/codeless/ViewIndexingTrigger$OnShakeListener;)V
.line 12
sget-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->sensorManager:Landroid/hardware/SensorManager;
sget-object v1, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexingTrigger:Lcom/facebook/appevents/codeless/ViewIndexingTrigger;
const/4 v3, 0x2
invoke-virtual {p0, v1, v0, v3}, Landroid/hardware/SensorManager;->registerListener(Landroid/hardware/SensorEventListener;Landroid/hardware/Sensor;I)Z
if-eqz v2, :cond_5f
.line 13
invoke-virtual {v2}, Lcom/facebook/internal/FetchedAppSettings;->getCodelessEventsEnabled()Z
move-result p0
if-eqz p0, :cond_5f
.line 14
sget-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->viewIndexer:Lcom/facebook/appevents/codeless/ViewIndexer;
invoke-virtual {p0}, Lcom/facebook/appevents/codeless/ViewIndexer;->schedule()V
:cond_5f
:goto_5f
return-void
.end method
.method static updateAppIndexing(Ljava/lang/Boolean;)V
.registers 1
.line 1
sput-object p0, Lcom/facebook/appevents/codeless/CodelessManager;->isAppIndexingEnabled:Ljava/lang/Boolean;
return-void
.end method