ActivityMgr.smali

.class public final Lcom/huawei/android/hms/agent/common/ActivityMgr;
.super Ljava/lang/Object;
.source "ActivityMgr.java"

# interfaces
.implements Landroid/app/Application$ActivityLifecycleCallbacks;


# static fields
.field public static final INST:Lcom/huawei/android/hms/agent/common/ActivityMgr;


# instance fields
.field private application:Landroid/app/Application;

.field private lastActivity:Landroid/app/Activity;

.field private pauseCallbacks:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Lcom/huawei/android/hms/agent/common/IActivityPauseCallback;",
            ">;"
        }
    .end annotation
.end field

.field private resumeCallbacks:Ljava/util/List;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/List",
            "<",
            "Lcom/huawei/android/hms/agent/common/IActivityResumeCallback;",
            ">;"
        }
    .end annotation
.end field


# direct methods
.method static constructor <clinit>()V
    .registers 1

    .prologue
    .line 19
    new-instance v0, Lcom/huawei/android/hms/agent/common/ActivityMgr;

    invoke-direct {v0}, Lcom/huawei/android/hms/agent/common/ActivityMgr;-><init>()V

    sput-object v0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->INST:Lcom/huawei/android/hms/agent/common/ActivityMgr;

    return-void
.end method

.method private constructor <init>()V
    .registers 2

    .prologue
    .line 44
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 34
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->resumeCallbacks:Ljava/util/List;

    .line 38
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->pauseCallbacks:Ljava/util/List;

    .line 44
    return-void
.end method


# virtual methods
.method public clearActivitPauseCallbacks()V
    .registers 2

    .prologue
    .line 124
    const-string v0, "clearOnPauseCallback"

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 125
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->pauseCallbacks:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->clear()V

    .line 126
    return-void
.end method

.method public clearActivitResumeCallbacks()V
    .registers 2

    .prologue
    .line 116
    const-string v0, "clearOnResumeCallback"

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 117
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->resumeCallbacks:Ljava/util/List;

    invoke-interface {v0}, Ljava/util/List;->clear()V

    .line 118
    return-void
.end method

.method public getLastActivity()Landroid/app/Activity;
    .registers 2

    .prologue
    .line 133
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    return-object v0
.end method

.method public init(Landroid/app/Application;Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 51
    const-string v0, "init"

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 53
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    if-eqz v0, :cond_e

    .line 54
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    invoke-virtual {v0, p0}, Landroid/app/Application;->unregisterActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V

    .line 57
    :cond_e
    iput-object p1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    .line 58
    iput-object p2, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 59
    invoke-virtual {p1, p0}, Landroid/app/Application;->registerActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V

    .line 60
    return-void
.end method

.method public onActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V
    .registers 5

    .prologue
    .line 143
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onCreated:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 144
    iput-object p1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 145
    return-void
.end method

.method public onActivityDestroyed(Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 208
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onDestroyed:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 209
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    if-ne p1, v0, :cond_25

    .line 210
    const/4 v0, 0x0

    iput-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 212
    :cond_25
    return-void
.end method

.method public onActivityPaused(Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 178
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onPaused:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 179
    new-instance v0, Ljava/util/ArrayList;

    iget-object v1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->pauseCallbacks:Ljava/util/List;

    invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V

    .line 180
    invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v1

    :goto_29
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_39

    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/huawei/android/hms/agent/common/IActivityPauseCallback;

    .line 181
    invoke-interface {v0, p1}, Lcom/huawei/android/hms/agent/common/IActivityPauseCallback;->onActivityPause(Landroid/app/Activity;)V

    goto :goto_29

    .line 183
    :cond_39
    return-void
.end method

.method public onActivityResumed(Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 163
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onResumed:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 164
    iput-object p1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 166
    new-instance v0, Ljava/util/ArrayList;

    iget-object v1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->resumeCallbacks:Ljava/util/List;

    invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V

    .line 167
    invoke-interface {v0}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v1

    :goto_2b
    invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_3b

    invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lcom/huawei/android/hms/agent/common/IActivityResumeCallback;

    .line 168
    invoke-interface {v0, p1}, Lcom/huawei/android/hms/agent/common/IActivityResumeCallback;->onActivityResume(Landroid/app/Activity;)V

    goto :goto_2b

    .line 170
    :cond_3b
    return-void
.end method

.method public onActivitySaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V
    .registers 3

    .prologue
    .line 200
    return-void
.end method

.method public onActivityStarted(Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 153
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onStarted:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 154
    iput-object p1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 155
    return-void
.end method

.method public onActivityStopped(Landroid/app/Activity;)V
    .registers 4

    .prologue
    .line 191
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "onStopped:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v1

    invoke-virtual {v1}, Ljava/lang/Class;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 192
    return-void
.end method

.method public registerActivitPauseEvent(Lcom/huawei/android/hms/agent/common/IActivityPauseCallback;)V
    .registers 4

    .prologue
    .line 99
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "registerOnPause:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 100
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->pauseCallbacks:Ljava/util/List;

    invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 101
    return-void
.end method

.method public registerActivitResumeEvent(Lcom/huawei/android/hms/agent/common/IActivityResumeCallback;)V
    .registers 4

    .prologue
    .line 81
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "registerOnResume:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 82
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->resumeCallbacks:Ljava/util/List;

    invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    .line 83
    return-void
.end method

.method public release()V
    .registers 3

    .prologue
    const/4 v1, 0x0

    .line 66
    const-string v0, "release"

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 67
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    if-eqz v0, :cond_f

    .line 68
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    invoke-virtual {v0, p0}, Landroid/app/Application;->unregisterActivityLifecycleCallbacks(Landroid/app/Application$ActivityLifecycleCallbacks;)V

    .line 71
    :cond_f
    iput-object v1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->lastActivity:Landroid/app/Activity;

    .line 72
    invoke-virtual {p0}, Lcom/huawei/android/hms/agent/common/ActivityMgr;->clearActivitResumeCallbacks()V

    .line 73
    iput-object v1, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->application:Landroid/app/Application;

    .line 74
    return-void
.end method

.method public unRegisterActivitPauseEvent(Lcom/huawei/android/hms/agent/common/IActivityPauseCallback;)V
    .registers 4

    .prologue
    .line 108
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "unRegisterOnPause:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 109
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->pauseCallbacks:Ljava/util/List;

    invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z

    .line 110
    return-void
.end method

.method public unRegisterActivitResumeEvent(Lcom/huawei/android/hms/agent/common/IActivityResumeCallback;)V
    .registers 4

    .prologue
    .line 90
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "unRegisterOnResume:"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lcom/huawei/android/hms/agent/common/HMSAgentLog;->d(Ljava/lang/String;)V

    .line 91
    iget-object v0, p0, Lcom/huawei/android/hms/agent/common/ActivityMgr;->resumeCallbacks:Ljava/util/List;

    invoke-interface {v0, p1}, Ljava/util/List;->remove(Ljava/lang/Object;)Z

    .line 92
    return-void
.end method