Files
rr3-apk/smali_classes2/com/ea/nimble/ApplicationLifecycleImpl.smali
Daniel Elliott f3960ee359 Add Discord APKTool decompilation (Smali source for modding)
- Imported from https://github.com/supermegamestre/Project-Real-Resurrection-3
- APKTool decompilation (Smali bytecode) for modding and rebuilding APK
- Supports both 32-bit (armeabi-v7a) and 64-bit (arm64-v8a) architectures
- Includes full Smali source, resources, and native libraries
- Ready to rebuild APK after modifications with apktool b command
- Added comprehensive README-apktool.md with modding guide

This branch complements the JADX branches:
- Use JADX (main/discord-community) to UNDERSTAND code (readable Java)
- Use APKTool (this branch) to MODIFY and REBUILD APK (editable Smali)

Total: 44,417 files, 538.51 MB Smali source code
2026-02-18 16:13:44 -08:00

1879 lines
54 KiB
Smali

.class Lcom/ea/nimble/ApplicationLifecycleImpl;
.super Lcom/ea/nimble/Component;
.source "SourceFile"
# interfaces
.implements Lcom/ea/nimble/IApplicationLifecycle;
.implements Lcom/ea/nimble/LogSource;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/ea/nimble/ApplicationLifecycleImpl$State;
}
.end annotation
# instance fields
.field private final m_activityEventCallbacks:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;",
">;"
}
.end annotation
.end field
.field private final m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;",
">;"
}
.end annotation
.end field
.field private final m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/ArrayList<",
"Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;",
">;"
}
.end annotation
.end field
.field private final m_core:Lcom/ea/nimble/BaseCore;
.field private m_createdActivityCount:I
.field private m_runningActivityCount:I
.field private m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
# direct methods
.method public constructor <init>(Lcom/ea/nimble/BaseCore;)V
.locals 0
.line 15
invoke-direct {p0}, Lcom/ea/nimble/Component;-><init>()V
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 17
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->INIT:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const/4 p1, 0x0
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
.line 20
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 21
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 22
new-instance p1, Ljava/util/ArrayList;
invoke-direct {p1}, Ljava/util/ArrayList;-><init>()V
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
return-void
.end method
.method private deleteConsumedDataFromIntent(Landroid/content/Intent;)V
.locals 2
if-eqz p1, :cond_1
.line 429
invoke-virtual {p1}, Landroid/content/Intent;->getData()Landroid/net/Uri;
move-result-object v0
if-eqz v0, :cond_0
.line 431
invoke-virtual {p1}, Landroid/content/Intent;->getDataString()Ljava/lang/String;
move-result-object v0
const-string v1, "ea://socialsharing"
.line 432
invoke-virtual {v0, v1}, Ljava/lang/String;->startsWith(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_0
const-string v0, "key"
.line 434
invoke-virtual {p1, v0}, Landroid/content/Intent;->removeExtra(Ljava/lang/String;)V
const/4 v0, 0x0
.line 435
invoke-virtual {p1, v0}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
:cond_0
const-string v0, "PushNotification"
.line 439
invoke-virtual {p1, v0}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
if-eqz v1, :cond_1
.line 441
invoke-virtual {p1, v0}, Landroid/content/Intent;->removeExtra(Ljava/lang/String;)V
:cond_1
return-void
.end method
.method private notifyApplicationLaunch(Landroid/content/Intent;)V
.locals 2
.line 448
invoke-static {p0}, Lcom/ea/nimble/Log$Helper;->LOGFUNC(Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 449
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;
.line 451
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;->onApplicationLaunch(Landroid/content/Intent;)V
goto :goto_0
.line 453
:cond_0
invoke-direct {p0, p1}, Lcom/ea/nimble/ApplicationLifecycleImpl;->deleteConsumedDataFromIntent(Landroid/content/Intent;)V
return-void
.end method
.method private notifyApplicationQuit()V
.locals 2
.line 477
invoke-static {p0}, Lcom/ea/nimble/Log$Helper;->LOGFUNC(Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 478
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;
.line 480
invoke-interface {v1}, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;->onApplicationQuit()V
goto :goto_0
:cond_0
return-void
.end method
.method private notifyApplicationResume(Landroid/content/Intent;)V
.locals 2
.line 467
invoke-static {p0}, Lcom/ea/nimble/Log$Helper;->LOGFUNC(Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 468
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;
.line 470
invoke-interface {v1}, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;->onApplicationResume()V
goto :goto_0
.line 472
:cond_0
invoke-direct {p0, p1}, Lcom/ea/nimble/ApplicationLifecycleImpl;->deleteConsumedDataFromIntent(Landroid/content/Intent;)V
return-void
.end method
.method private notifyApplicationSuspend()V
.locals 2
.line 458
invoke-static {p0}, Lcom/ea/nimble/Log$Helper;->LOGFUNC(Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 459
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;
.line 461
invoke-interface {v1}, Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;->onApplicationSuspend()V
goto :goto_0
:cond_0
return-void
.end method
# virtual methods
.method public getComponentId()Ljava/lang/String;
.locals 1
const-string v0, "com.ea.nimble.applicationlifecycle"
return-object v0
.end method
.method public getLogSourceTitle()Ljava/lang/String;
.locals 1
const-string v0, "AppLifecycle"
return-object v0
.end method
.method public handleBackPressed()Z
.locals 3
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 409
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
const/4 v1, 0x1
:cond_0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;
.line 411
invoke-interface {v2}, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;->onBackPressed()Z
move-result v2
if-nez v2, :cond_0
const/4 v1, 0x0
goto :goto_0
:cond_1
return v1
.end method
.method public notifyActivityCreate(Landroid/os/Bundle;Landroid/app/Activity;)V
.locals 5
.line 90
invoke-virtual {p2}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s CREATE"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 92
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->INIT:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const/4 v2, 0x1
const-string v3, "Invalid running activity count %d"
const/4 v4, 0x0
if-eq v0, v1, :cond_8
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->QUIT:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_0
goto/16 :goto_4
.line 109
:cond_0
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->CONFIG_CHANGE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_3
.line 111
invoke-static {}, Lcom/ea/nimble/ApplicationEnvironment;->getCurrentActivity()Landroid/app/Activity;
move-result-object v0
if-eq v0, p2, :cond_1
.line 114
invoke-static {}, Lcom/ea/nimble/ApplicationEnvironment;->getCurrentActivity()Landroid/app/Activity;
move-result-object v0
invoke-virtual {v0}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
.line 115
invoke-virtual {p2}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v1
filled-new-array {v0, v1}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity created with state CONFIG_CHANGE but different activity %s and %s"
.line 113
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_0
:cond_1
const-string v0, "Activity created from CONFIG_CHANGE, activity configuration changed"
new-array v1, v4, [Ljava/lang/Object;
.line 119
invoke-static {p0, v0, v1}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
:goto_0
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 122
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_1
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 124
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V
goto :goto_1
:cond_2
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
if-eqz p1, :cond_a
.line 129
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
invoke-static {p0, v3, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iput v4, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
goto/16 :goto_6
.line 133
:cond_3
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_5
const-string v0, "Activity created from PAUSE, normal activity switch"
new-array v1, v4, [Ljava/lang/Object;
.line 135
invoke-static {p0, v0, v1}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 136
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_2
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_4
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 138
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V
goto :goto_2
:cond_4
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
add-int/2addr p1, v2
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
goto/16 :goto_6
.line 142
:cond_5
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_7
const-string v0, "Activity created from SUSPEND, external activity switch; (new) app restart"
new-array v1, v4, [Ljava/lang/Object;
.line 144
invoke-static {p0, v0, v1}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 145
invoke-virtual {v0}, Lcom/ea/nimble/BaseCore;->onApplicationResume()V
.line 146
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RESUME:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 147
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_3
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_6
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 149
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V
goto :goto_3
:cond_6
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
add-int/2addr p1, v2
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
if-eqz p1, :cond_a
.line 154
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
invoke-static {p0, v3, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iput v4, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
goto :goto_6
.line 160
:cond_7
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string p2, "Activity created with %s state, shouldn\'t happen"
invoke-static {p0, p2, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_6
.line 94
:cond_8
:goto_4
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity created clearly with state %s"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 95
invoke-virtual {p2}, Landroid/app/Activity;->getIntent()Landroid/content/Intent;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/ea/nimble/BaseCore;->onApplicationLaunch(Landroid/content/Intent;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 96
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_5
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_9
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 98
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityCreated(Landroid/app/Activity;Landroid/os/Bundle;)V
goto :goto_5
.line 100
:cond_9
invoke-virtual {p2}, Landroid/app/Activity;->getIntent()Landroid/content/Intent;
move-result-object p1
invoke-direct {p0, p1}, Lcom/ea/nimble/ApplicationLifecycleImpl;->notifyApplicationLaunch(Landroid/content/Intent;)V
iput v2, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
.line 102
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->LAUNCH:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
if-eqz p1, :cond_a
.line 105
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
invoke-static {p0, v3, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iput v4, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
:cond_a
:goto_6
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 163
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget p2, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p2
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
filled-new-array {p1, p2, v0}, [Ljava/lang/Object;
move-result-object p1
const-string p2, "State after created %s (%d, %d)"
.line 162
invoke-static {p0, p2, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityDestroy(Landroid/app/Activity;)V
.locals 2
.line 352
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s DESTROY"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 353
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 355
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityDestroyed(Landroid/app/Activity;)V
goto :goto_0
:cond_0
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 358
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->CONFIG_CHANGE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq p1, v0, :cond_2
.line 360
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq p1, v0, :cond_1
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RUN:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq p1, v0, :cond_1
.line 362
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity destroy on invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
:cond_1
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
add-int/lit8 p1, p1, -0x1
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
if-nez p1, :cond_2
.line 367
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->QUIT:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 368
invoke-direct {p0}, Lcom/ea/nimble/ApplicationLifecycleImpl;->notifyApplicationQuit()V
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 369
invoke-virtual {p1}, Lcom/ea/nimble/BaseCore;->onApplicationQuit()V
const/4 p1, 0x0
.line 370
invoke-static {p1}, Lcom/ea/nimble/ApplicationEnvironment;->setCurrentActivity(Landroid/app/Activity;)V
:cond_2
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 375
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after destroy %s (%d, %d)"
.line 374
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityOnNewIntent(Landroid/content/Intent;Landroid/app/Activity;)V
.locals 2
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 399
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;
.line 401
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;->onNewIntent(Landroid/app/Activity;Landroid/content/Intent;)V
goto :goto_0
:cond_0
return-void
.end method
.method public notifyActivityPause(Landroid/app/Activity;)V
.locals 2
.line 268
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s PAUSE"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 269
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 271
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityPaused(Landroid/app/Activity;)V
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 274
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RUN:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq v0, v1, :cond_1
.line 276
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity pause on invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 278
:cond_1
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 281
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after pause %s (%d, %d)"
.line 280
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityRestart(Landroid/app/Activity;)V
.locals 2
.line 169
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s RESTART"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 170
invoke-static {p1}, Lcom/ea/nimble/ApplicationEnvironment;->setCurrentActivity(Landroid/app/Activity;)V
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 172
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const/4 v1, 0x0
if-ne p1, v0, :cond_0
const-string p1, "Activity restart from PAUSE, normal activity switch"
new-array v0, v1, [Ljava/lang/Object;
.line 174
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_0
.line 176
:cond_0
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne p1, v0, :cond_1
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 178
invoke-virtual {p1}, Lcom/ea/nimble/BaseCore;->onApplicationResume()V
.line 179
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RESUME:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const-string p1, "Activity restart from SUSPEND, external activity switch; (new) app restart"
new-array v0, v1, [Ljava/lang/Object;
.line 180
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_0
.line 184
:cond_1
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity restart with invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
:goto_0
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 188
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after restart %s (%d, %d)"
.line 187
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityRestoreInstanceState(Landroid/os/Bundle;Landroid/app/Activity;)V
.locals 0
.line 241
invoke-virtual {p2}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string p2, "Activity %s RESTORE_STATE"
invoke-static {p0, p2, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityResult(IILandroid/content/Intent;Landroid/app/Activity;)V
.locals 2
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 381
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;
.line 383
invoke-interface {v1, p4, p1, p2, p3}, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;->onActivityResult(Landroid/app/Activity;IILandroid/content/Intent;)V
goto :goto_0
:cond_0
return-void
.end method
.method public notifyActivityResume(Landroid/app/Activity;)V
.locals 2
.line 247
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s RESUME"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 248
invoke-static {p1}, Lcom/ea/nimble/ApplicationEnvironment;->setCurrentActivity(Landroid/app/Activity;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 249
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 251
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityResumed(Landroid/app/Activity;)V
goto :goto_0
:cond_0
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 254
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq p1, v0, :cond_1
.line 256
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity resume on invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
const/4 p1, 0x0
new-array p1, p1, [Ljava/lang/Object;
const-string v0, "<NOTE>Please double check if the game\'s activity hooks ApplicationLifecycle.onActivityRestart() correctly."
.line 257
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 259
:cond_1
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RUN:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 262
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after resume %s (%d, %d)"
.line 261
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityRetainNonConfigurationInstance()V
.locals 0
.line 421
invoke-static {p0}, Lcom/ea/nimble/Log$Helper;->LOGFUNC(Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivitySaveInstanceState(Landroid/os/Bundle;Landroid/app/Activity;)V
.locals 2
.line 287
invoke-virtual {p2}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s SAVE_STATE"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 288
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 290
invoke-interface {v1, p2, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivitySaveInstanceState(Landroid/app/Activity;Landroid/os/Bundle;)V
goto :goto_0
:cond_0
return-void
.end method
.method public notifyActivityStart(Landroid/app/Activity;)V
.locals 3
.line 194
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s START"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 195
invoke-static {p1}, Lcom/ea/nimble/ApplicationEnvironment;->setCurrentActivity(Landroid/app/Activity;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 197
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->LAUNCH:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const/4 v2, 0x0
if-ne v0, v1, :cond_0
.line 199
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const-string p1, "Activity start with LAUNCH state, normal app start"
new-array v0, v2, [Ljava/lang/Object;
.line 200
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto/16 :goto_3
.line 202
:cond_0
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RESUME:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_2
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 204
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 206
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityStarted(Landroid/app/Activity;)V
goto :goto_0
.line 208
:cond_1
invoke-virtual {p1}, Landroid/app/Activity;->getIntent()Landroid/content/Intent;
move-result-object p1
invoke-direct {p0, p1}, Lcom/ea/nimble/ApplicationLifecycleImpl;->notifyApplicationResume(Landroid/content/Intent;)V
.line 209
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const-string p1, "Activity start with RESUME state, set to PAUSE"
new-array v0, v2, [Ljava/lang/Object;
.line 210
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_3
.line 212
:cond_2
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->CONFIG_CHANGE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_4
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 214
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_1
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_3
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 216
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityStarted(Landroid/app/Activity;)V
goto :goto_1
.line 218
:cond_3
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
const-string p1, "Activity start with CONFIG_CHANGE state, set to PAUSE"
new-array v0, v2, [Ljava/lang/Object;
.line 219
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_3
.line 221
:cond_4
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_5
const-string p1, "Activity start with PAUSE state, normal activity switch"
new-array v0, v2, [Ljava/lang/Object;
.line 223
invoke-static {p0, p1, v0}, Lcom/ea/nimble/Log$Helper;->LOGD(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
goto :goto_3
:cond_5
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 227
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_2
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_6
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 229
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityStarted(Landroid/app/Activity;)V
goto :goto_2
:cond_6
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 231
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity start with invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
:goto_3
iget p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
add-int/lit8 p1, p1, 0x1
iput p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 235
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after start %s (%d, %d)"
.line 234
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityStop(Landroid/app/Activity;)V
.locals 2
.annotation build Landroid/annotation/SuppressLint;
value = {
"NewApi"
}
.end annotation
.line 298
invoke-virtual {p1}, Landroid/app/Activity;->getLocalClassName()Ljava/lang/String;
move-result-object v0
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
const-string v1, "Activity %s STOP"
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 299
invoke-virtual {v0}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object v0
:goto_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;
.line 301
invoke-interface {v1, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;->onActivityStopped(Landroid/app/Activity;)V
goto :goto_0
:cond_0
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
.line 305
invoke-virtual {p1}, Landroid/app/Activity;->isChangingConfigurations()Z
move-result v0
if-eqz v0, :cond_1
.line 307
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->CONFIG_CHANGE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
goto :goto_1
:cond_1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
if-nez v0, :cond_3
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 314
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq v0, v1, :cond_2
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq v0, v1, :cond_2
const-string v1, "Interesting case %s, HIGHLIGHT!!"
filled-new-array {v0}, [Ljava/lang/Object;
move-result-object v0
.line 316
invoke-static {p0, v1, v0}, Lcom/ea/nimble/Log$Helper;->LOGW(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 318
:cond_2
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 319
invoke-virtual {p1}, Landroid/app/Activity;->isFinishing()Z
move-result p1
if-nez p1, :cond_5
.line 321
invoke-direct {p0}, Lcom/ea/nimble/ApplicationLifecycleImpl;->notifyApplicationSuspend()V
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 322
invoke-virtual {p1}, Lcom/ea/nimble/BaseCore;->onApplicationSuspend()V
goto :goto_1
:cond_3
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 326
sget-object v1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->PAUSE:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-ne v0, v1, :cond_4
.line 328
sget-object v0, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->SUSPEND:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
iput-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 329
invoke-virtual {p1}, Landroid/app/Activity;->isFinishing()Z
move-result p1
if-nez p1, :cond_5
const/4 p1, 0x0
new-array p1, p1, [Ljava/lang/Object;
const-string v0, "running activity count may be messed"
.line 333
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGW(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
.line 334
invoke-direct {p0}, Lcom/ea/nimble/ApplicationLifecycleImpl;->notifyApplicationSuspend()V
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_core:Lcom/ea/nimble/BaseCore;
.line 335
invoke-virtual {p1}, Lcom/ea/nimble/BaseCore;->onApplicationSuspend()V
goto :goto_1
.line 339
:cond_4
sget-object p1, Lcom/ea/nimble/ApplicationLifecycleImpl$State;->RUN:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
if-eq v0, p1, :cond_5
.line 341
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
filled-new-array {p1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "Activity stop on invalid state %s"
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGE(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
:cond_5
:goto_1
iget-object p1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_state:Lcom/ea/nimble/ApplicationLifecycleImpl$State;
.line 346
invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p1
iget v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_createdActivityCount:I
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
iget v1, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_runningActivityCount:I
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v1
filled-new-array {p1, v0, v1}, [Ljava/lang/Object;
move-result-object p1
const-string v0, "State after stop %s (%d, %d)"
.line 345
invoke-static {p0, v0, p1}, Lcom/ea/nimble/Log$Helper;->LOGV(Ljava/lang/Object;Ljava/lang/String;[Ljava/lang/Object;)V
return-void
.end method
.method public notifyActivityWindowFocusChanged(ZLandroid/app/Activity;)V
.locals 1
iget-object p2, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 390
invoke-virtual {p2}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object p2
:goto_0
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_0
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;
.line 392
invoke-interface {v0, p1}, Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;->onWindowFocusChanged(Z)V
goto :goto_0
:cond_0
return-void
.end method
.method public registerActivityEventCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 66
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public registerActivityLifecycleCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 54
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public registerApplicationLifecycleCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 78
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method public teardown()V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 46
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 47
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 48
invoke-virtual {v0}, Ljava/util/ArrayList;->clear()V
return-void
.end method
.method public unregisterActivityEventCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ActivityEventCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityEventCallbacks:Ljava/util/ArrayList;
.line 72
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
return-void
.end method
.method public unregisterActivityLifecycleCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ActivityLifecycleCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_activityLifecycleCallbacks:Ljava/util/ArrayList;
.line 60
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
return-void
.end method
.method public unregisterApplicationLifecycleCallbacks(Lcom/ea/nimble/IApplicationLifecycle$ApplicationLifecycleCallbacks;)V
.locals 1
iget-object v0, p0, Lcom/ea/nimble/ApplicationLifecycleImpl;->m_applicationLifecycleCallbacks:Ljava/util/ArrayList;
.line 84
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
return-void
.end method