GrayService.smali
.class public Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;
.super Landroid/app/Service;
.source "GrayService.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService$GrayInnerService;
}
.end annotation
# static fields
.field private static final GRAY_SERVICE_ID:I = -0x3e9
# instance fields
.field protected mGrayServiceId:I
.field protected mIsResident:Z
.field protected mNonResidentId:I
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 16
invoke-direct {p0}, Landroid/app/Service;-><init>()V
.line 19
const/4 v0, -0x1
iput v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
.line 20
const/16 v0, -0x3e9
iput v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mGrayServiceId:I
.line 21
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mIsResident:Z
return-void
.end method
.method private getInnerServiceIntent(Ljava/lang/Class;)Landroid/content/Intent;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class",
"<*>;)",
"Landroid/content/Intent;"
}
.end annotation
.prologue
const/4 v0, 0x0
.line 56
iget v1, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
const/4 v2, -0x1
if-ne v1, v2, :cond_e
.line 57
new-instance v0, Landroid/content/Intent;
const-class v1, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService$GrayInnerService;
invoke-direct {v0, p0, v1}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
.line 71
:cond_d
:goto_d
return-object v0
.line 59
:cond_e
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, "$GrayInnerService"
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
.line 62
:try_start_25
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
invoke-static {v2}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v2
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-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
:try_end_3f
.catch Ljava/lang/Exception; {:try_start_25 .. :try_end_3f} :catch_4f
move-result-object v1
.line 65
:goto_40
if-eqz v1, :cond_d
.line 68
new-instance v0, Landroid/content/Intent;
invoke-direct {v0, p0, v1}, Landroid/content/Intent;-><init>(Landroid/content/Context;Ljava/lang/Class;)V
.line 69
const-string v1, "nonResidentId"
iget v2, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
goto :goto_d
.line 63
:catch_4f
move-exception v1
move-object v1, v0
goto :goto_40
.end method
# virtual methods
.method public onBind(Landroid/content/Intent;)Landroid/os/IBinder;
.registers 4
.prologue
.line 76
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string v1, "Not yet implemented"
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public onCreate()V
.registers 1
.prologue
.line 25
invoke-super {p0}, Landroid/app/Service;->onCreate()V
.line 26
return-void
.end method
.method public onDestroy()V
.registers 1
.prologue
.line 81
invoke-super {p0}, Landroid/app/Service;->onDestroy()V
.line 82
return-void
.end method
.method public onStartCommand(Landroid/content/Intent;II)I
.registers 7
.prologue
const/4 v2, 0x1
.line 33
if-nez p1, :cond_4
.line 51
:cond_3
:goto_3
return v2
.line 36
:cond_4
const-string v0, "isResident"
invoke-virtual {p1, v0, v2}, Landroid/content/Intent;->getBooleanExtra(Ljava/lang/String;Z)Z
move-result v0
iput-boolean v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mIsResident:Z
.line 37
const-string v0, "nonResidentId"
const/4 v1, -0x1
invoke-virtual {p1, v0, v1}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I
move-result v0
iput v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
.line 38
iget v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mNonResidentId:I
rsub-int v0, v0, -0x3e9
iput v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mGrayServiceId:I
.line 40
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x12
if-ge v0, v1, :cond_2c
.line 41
iget v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mGrayServiceId:I
new-instance v1, Landroid/app/Notification;
invoke-direct {v1}, Landroid/app/Notification;-><init>()V
invoke-virtual {p0, v0, v1}, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->startForeground(ILandroid/app/Notification;)V
goto :goto_3
.line 43
:cond_2c
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-direct {p0, v0}, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->getInnerServiceIntent(Ljava/lang/Class;)Landroid/content/Intent;
move-result-object v0
.line 44
if-eqz v0, :cond_3
.line 47
invoke-virtual {p0, v0}, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->startService(Landroid/content/Intent;)Landroid/content/ComponentName;
.line 48
iget v0, p0, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->mGrayServiceId:I
new-instance v1, Landroid/app/Notification;
invoke-direct {v1}, Landroid/app/Notification;-><init>()V
invoke-virtual {p0, v0, v1}, Lcom/cleanmaster/daemon/foreServiceforlive/service/GrayService;->startForeground(ILandroid/app/Notification;)V
goto :goto_3
.end method