MemoryInfo.smali
.class public Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;
.super Ljava/lang/Object;
.source "MemoryInfo.java"
# instance fields
.field public freeSize:J
.field public killedProcessCount:I
.field public originalPercentage:I
.field private percentage:I
.field public totalCleaned:J
.field public totalSize:J
.field public usedSize:J
# direct methods
.method private constructor <init>()V
.registers 1
.prologue
.line 24
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 26
return-void
.end method
.method public static newInstance()Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;
.registers 1
.prologue
.line 65
new-instance v0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;
invoke-direct {v0}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;-><init>()V
.line 66
invoke-virtual {v0}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->update()V
.line 67
return-object v0
.end method
.method public static newInstance(J)Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;
.registers 4
.prologue
.line 72
new-instance v0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;
invoke-direct {v0}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;-><init>()V
.line 73
invoke-virtual {v0, p0, p1}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->update(J)V
.line 74
return-object v0
.end method
.method private writeMemoryErrorLog()V
.registers 2
.prologue
.line 88
new-instance v0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo$1;
invoke-direct {v0, p0}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo$1;-><init>(Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;)V
invoke-static {v0}, Lcom/cleanmaster/base/util/concurrent/BackgroundThread;->post(Ljava/lang/Runnable;)V
.line 95
return-void
.end method
# virtual methods
.method public addCleanedCount()V
.registers 2
.prologue
.line 146
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->killedProcessCount:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->killedProcessCount:I
.line 147
return-void
.end method
.method public addCleanedMem(J)V
.registers 6
.prologue
.line 140
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalCleaned:J
add-long/2addr v0, p1
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalCleaned:J
.line 141
return-void
.end method
.method public cleaned(J)V
.registers 10
.prologue
const-wide/16 v4, 0x0
.line 109
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
sub-long/2addr v0, p1
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
.line 110
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
add-long/2addr v0, p1
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
.line 111
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
long-to-float v0, v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
long-to-float v1, v2
div-float/2addr v0, v1
const/high16 v1, 0x42c80000 # 100.0f
mul-float/2addr v0, v1
float-to-int v0, v0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
.line 114
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
if-lez v0, :cond_29
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
cmp-long v0, v0, v4
if-lez v0, :cond_29
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
cmp-long v0, v0, v4
if-gtz v0, :cond_66
.line 115
:cond_29
const-string v0, "MemoryCleaned"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v2, "usedSize:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ";totalSize:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ";percentage:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
const-string v2, ";clean size:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Lcom/cleanmaster/hpsharelib/utils/OpLog;->x(Ljava/lang/String;Ljava/lang/String;)V
.line 117
:cond_66
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
if-gez v0, :cond_6f
.line 118
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
neg-int v0, v0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
.line 121
:cond_6f
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
cmp-long v0, v0, v4
if-gez v0, :cond_7a
.line 122
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
neg-long v0, v0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
.line 125
:cond_7a
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
cmp-long v0, v0, v4
if-gez v0, :cond_85
.line 126
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
neg-long v0, v0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
.line 128
:cond_85
return-void
.end method
.method public getCleanedPercent()F
.registers 5
.prologue
.line 101
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
const-wide/16 v2, 0x0
cmp-long v0, v0, v2
if-nez v0, :cond_a
.line 102
const/4 v0, 0x0
.line 105
:goto_9
return v0
.line 104
:cond_a
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalCleaned:J
long-to-float v0, v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
long-to-float v1, v2
div-float/2addr v0, v1
.line 105
goto :goto_9
.end method
.method public getPercent()I
.registers 2
.prologue
.line 81
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
return v0
.end method
.method public resetCleanedMemory()V
.registers 3
.prologue
.line 131
const-wide/16 v0, 0x0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalCleaned:J
.line 132
const/4 v0, 0x0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->killedProcessCount:I
.line 133
return-void
.end method
.method public toString()Ljava/lang/String;
.registers 5
.prologue
.line 151
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "MemoryInfo [totalSize="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, ", usedSize="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, ", freeSize="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
invoke-virtual {v0, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, ", percentage="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget v1, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string 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
return-object v0
.end method
.method public update()V
.registers 3
.prologue
.line 29
invoke-static {}, Lcom/cleanmaster/hpsharelib/boost/process/util/ProcessInfoHelper;->getAvailableMemoryByte()J
move-result-wide v0
invoke-virtual {p0, v0, v1}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->update(J)V
.line 30
return-void
.end method
.method public update(J)V
.registers 10
.prologue
const-wide/16 v4, 0x0
.line 33
invoke-static {}, Lcom/cleanmaster/hpsharelib/boost/process/util/ProcessInfoHelper;->getTotalMemoryByte()J
move-result-wide v0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
.line 34
iput-wide p1, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
.line 35
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
sub-long/2addr v0, v2
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
.line 36
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
cmp-long v0, v0, v4
if-nez v0, :cond_3e
.line 37
const/4 v0, 0x0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
.line 53
:cond_1a
:goto_1a
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->originalPercentage:I
.line 56
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
if-lez v0, :cond_3a
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
const/16 v1, 0x64
if-ge v0, v1, :cond_3a
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
cmp-long v0, v0, v4
if-lez v0, :cond_3a
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
cmp-long v0, v0, v4
if-lez v0, :cond_3a
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
cmp-long v0, v0, v4
if-gtz v0, :cond_3d
.line 60
:cond_3a
invoke-direct {p0}, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->writeMemoryErrorLog()V
.line 62
:cond_3d
return-void
.line 40
:cond_3e
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
long-to-float v0, v0
iget-wide v2, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->totalSize:J
long-to-float v1, v2
div-float/2addr v0, v1
const/high16 v1, 0x42c80000 # 100.0f
mul-float/2addr v0, v1
float-to-int v0, v0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
.line 42
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
if-gez v0, :cond_54
.line 43
iget v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
neg-int v0, v0
iput v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->percentage:I
.line 45
:cond_54
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
cmp-long v0, v0, v4
if-gez v0, :cond_5f
.line 46
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
neg-long v0, v0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->usedSize:J
.line 49
:cond_5f
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
cmp-long v0, v0, v4
if-gez v0, :cond_1a
.line 50
iget-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
neg-long v0, v0
iput-wide v0, p0, Lcom/cleanmaster/hpsharelib/base/util/system/MemoryInfo;->freeSize:J
goto :goto_1a
.end method