FrameworkLifecycleHandler.smali
.class public Lorg/acdd/runtime/FrameworkLifecycleHandler;
.super Ljava/lang/Object;
.source "FrameworkLifecycleHandler.java"
# interfaces
.implements Lorg/osgi/framework/FrameworkListener;
# static fields
.field static final log:Lorg/acdd/log/Logger;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 45
invoke-static {}, Lorg/acdd/log/LoggerFactory;->getInstance()Lorg/acdd/log/Logger;
move-result-object v0
sput-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
.line 46
return-void
.end method
.method public constructor <init>()V
.registers 1
.prologue
.line 41
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method private started()V
.registers 7
.prologue
.line 105
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
.line 107
:try_start_4
sget-object v0, Lorg/acdd/runtime/RuntimeVariables;->androidApplication:Landroid/app/Application;
sget-object v1, Lorg/acdd/runtime/RuntimeVariables;->delegateResources:Landroid/content/res/Resources;
const/4 v4, 0x0
const/4 v5, 0x1
invoke-static {v0, v1, v4, v5}, Lorg/acdd/runtime/DelegateResources;->newDelegateResources(Landroid/app/Application;Landroid/content/res/Resources;Ljava/lang/String;Z)V
:try_end_d
.catch Ljava/lang/Throwable; {:try_start_4 .. :try_end_d} :catch_32
.line 111
:goto_d
sget-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, "[PluginTimer] started() spend "
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
sub-long v2, v4, v2
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " milliseconds"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Lorg/acdd/log/Logger;->warn(Ljava/lang/String;)V
.line 112
return-void
.line 108
:catch_32
move-exception v0
.line 109
sget-object v1, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
const-string v4, "Failed to newDelegateResources"
invoke-interface {v1, v4, v0}, Lorg/acdd/log/Logger;->error(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_d
.end method
.method private starting()V
.registers 11
.prologue
const/4 v1, 0x0
.line 70
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
.line 72
:try_start_5
sget-object v0, Lorg/acdd/runtime/RuntimeVariables;->androidApplication:Landroid/app/Application;
invoke-virtual {v0}, Landroid/app/Application;->getPackageManager()Landroid/content/pm/PackageManager;
move-result-object v0
sget-object v2, Lorg/acdd/runtime/RuntimeVariables;->androidApplication:Landroid/app/Application;
invoke-virtual {v2}, Landroid/app/Application;->getPackageName()Ljava/lang/String;
move-result-object v2
const/16 v3, 0x80
invoke-virtual {v0, v2, v3}, Landroid/content/pm/PackageManager;->getApplicationInfo(Ljava/lang/String;I)Landroid/content/pm/ApplicationInfo;
move-result-object v0
iget-object v0, v0, Landroid/content/pm/ApplicationInfo;->metaData:Landroid/os/Bundle;
:try_end_19
.catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_5 .. :try_end_19} :catch_85
.line 77
:goto_19
if-eqz v0, :cond_94
.line 78
const-string v2, "application"
invoke-virtual {v0, v2}, Landroid/os/Bundle;->getString(Ljava/lang/String;)Ljava/lang/String;
move-result-object v2
.line 79
invoke-static {v2}, Lorg/acdd/util/StringUtils;->isNotEmpty(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_94
.line 80
sget-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
invoke-interface {v0}, Lorg/acdd/log/Logger;->isDebugEnabled()Z
move-result v0
if-eqz v0, :cond_47
.line 81
sget-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "Found extra application: "
invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-interface {v0, v3}, Lorg/acdd/log/Logger;->debug(Ljava/lang/String;)V
.line 83
:cond_47
const-string v0, ","
invoke-static {v2, v0}, Lorg/acdd/util/StringUtils;->split(Ljava/lang/String;Ljava/lang/String;)[Ljava/lang/String;
move-result-object v0
.line 84
if-eqz v0, :cond_52
array-length v3, v0
if-nez v3, :cond_57
.line 85
:cond_52
const/4 v0, 0x1
new-array v0, v0, [Ljava/lang/String;
aput-object v2, v0, v1
.line 87
:cond_57
array-length v3, v0
move v2, v1
:goto_59
if-ge v2, v3, :cond_94
aget-object v1, v0, v2
.line 89
:try_start_5d
invoke-static {}, Lorg/acdd/framework/Framework;->getSystemClassLoader()Ljava/lang/ClassLoader;
move-result-object v6
invoke-static {v1, v6}, Lorg/acdd/runtime/BundleLifecycleHandler;->newApplication(Ljava/lang/String;Ljava/lang/ClassLoader;)Landroid/app/Application;
move-result-object v6
.line 90
invoke-virtual {v6}, Landroid/app/Application;->onCreate()V
.line 91
sget-object v7, Lorg/acdd/runtime/DelegateComponent;->apkApplications:Ljava/util/Map;
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v9, "system:"
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v8
invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v7, v1, v6}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:try_end_81
.catch Ljava/lang/Throwable; {:try_start_5d .. :try_end_81} :catch_8b
.line 87
:goto_81
add-int/lit8 v1, v2, 0x1
move v2, v1
goto :goto_59
.line 73
:catch_85
move-exception v0
.line 74
invoke-virtual {v0}, Landroid/content/pm/PackageManager$NameNotFoundException;->printStackTrace()V
.line 75
const/4 v0, 0x0
goto :goto_19
.line 92
:catch_8b
move-exception v1
.line 93
sget-object v6, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
const-string v7, "Error to start application"
invoke-interface {v6, v7, v1}, Lorg/acdd/log/Logger;->error(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_81
.line 98
:cond_94
sget-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "[PluginTimer] starting() spend "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v2
sub-long/2addr v2, v4
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, " milliseconds"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Lorg/acdd/log/Logger;->warn(Ljava/lang/String;)V
.line 99
return-void
.end method
# virtual methods
.method public frameworkEvent(Lorg/osgi/framework/FrameworkEvent;)V
.registers 5
.prologue
.line 50
invoke-virtual {p1}, Lorg/osgi/framework/FrameworkEvent;->getType()I
move-result v0
packed-switch v0, :pswitch_data_2c
.line 58
sget-object v0, Lorg/acdd/runtime/FrameworkLifecycleHandler;->log:Lorg/acdd/log/Logger;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "frameworkEvent unsupported event >>"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p1}, Lorg/osgi/framework/FrameworkEvent;->getType()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-interface {v0, v1}, Lorg/acdd/log/Logger;->warn(Ljava/lang/String;)V
.line 61
:goto_23
return-void
.line 52
:pswitch_24
invoke-direct {p0}, Lorg/acdd/runtime/FrameworkLifecycleHandler;->starting()V
goto :goto_23
.line 55
:pswitch_28
invoke-direct {p0}, Lorg/acdd/runtime/FrameworkLifecycleHandler;->started()V
goto :goto_23
.line 50
:pswitch_data_2c
.packed-switch 0x0
:pswitch_24
:pswitch_28
.end packed-switch
.end method