AppMonitorService.smali

.class public Lcom/alibaba/mtl/appmonitor/AppMonitorService;
.super Landroid/app/Service;
.source "AppMonitorService.java"


# instance fields
.field a:Lcom/alibaba/mtl/appmonitor/IMonitor;


# direct methods
.method public constructor <init>()V
    .registers 2

    .line 1
    invoke-direct {p0}, Landroid/app/Service;-><init>()V

    const/4 v0, 0x0

    .line 2
    iput-object v0, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    return-void
.end method


# virtual methods
.method public onBind(Landroid/content/Intent;)Landroid/os/IBinder;
    .registers 3

    .line 1
    iget-object p1, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    if-nez p1, :cond_f

    .line 2
    new-instance p1, Lcom/alibaba/mtl/appmonitor/Monitor;

    invoke-virtual {p0}, Landroid/app/Service;->getApplication()Landroid/app/Application;

    move-result-object v0

    invoke-direct {p1, v0}, Lcom/alibaba/mtl/appmonitor/Monitor;-><init>(Landroid/app/Application;)V

    iput-object p1, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    .line 3
    :cond_f
    iget-object p1, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    check-cast p1, Landroid/os/IBinder;

    return-object p1
.end method

.method public onDestroy()V
    .registers 2

    .line 1
    iget-object v0, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    if-eqz v0, :cond_7

    .line 2
    :try_start_4
    invoke-interface {v0}, Lcom/alibaba/mtl/appmonitor/IMonitor;->triggerUpload()V
    :try_end_7
    .catch Landroid/os/RemoteException; {:try_start_4 .. :try_end_7} :catch_7

    .line 3
    :catch_7
    :cond_7
    invoke-super {p0}, Landroid/app/Service;->onDestroy()V

    return-void
.end method

.method public onLowMemory()V
    .registers 2

    .line 1
    iget-object v0, p0, Lcom/alibaba/mtl/appmonitor/AppMonitorService;->a:Lcom/alibaba/mtl/appmonitor/IMonitor;

    if-eqz v0, :cond_7

    .line 2
    :try_start_4
    invoke-interface {v0}, Lcom/alibaba/mtl/appmonitor/IMonitor;->triggerUpload()V
    :try_end_7
    .catch Landroid/os/RemoteException; {:try_start_4 .. :try_end_7} :catch_7

    .line 3
    :catch_7
    :cond_7
    invoke-super {p0}, Landroid/app/Service;->onLowMemory()V

    return-void
.end method