StorageSpaceMonitor.smali
.class public Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
.super Ljava/lang/Object;
.source "StorageSpaceMonitor.java"
# static fields
.field public static final NOTIFICATION_CANCELED:I = 0x2
.field public static final NOTIFICATION_CLICKED:I = 0x3
.field public static final NOTIFICATION_NONE:I = 0x0
.field public static final NOTIFICATION_SHOWING:I = 0x1
.field private static final ONEHOUR_INTERVAL:J = 0x36ee80L
.field private static final STORAGE_MONITOR_FREQ_PERIOD:J = 0xea60L
.field public static final TRIGGER_APK:I = 0x3
.field public static final TRIGGER_TAKEPIC:I = 0x2
.field public static final TRIGGER_UNLOCK:I = 0x1
.field private static instance:Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
# instance fields
.field private mContext:Landroid/content/Context;
.field private mCurTrigger:I
.field private mTimerStorageMonitor:Ljava/util/Timer;
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 20
const/4 v0, 0x0
sput-object v0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->instance:Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
return-void
.end method
.method private constructor <init>()V
.registers 2
.prologue
const/4 v0, 0x0
.line 35
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 19
iput-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
.line 21
iput-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mContext:Landroid/content/Context;
.line 36
invoke-static {}, Lcom/keniu/security/l;->d()Landroid/content/Context;
move-result-object v0
invoke-virtual {v0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;
move-result-object v0
iput-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mContext:Landroid/content/Context;
.line 37
return-void
.end method
.method static synthetic access$000(Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;)I
.registers 2
.prologue
.line 15
iget v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mCurTrigger:I
return v0
.end method
.method public static declared-synchronized getInstance()Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
.registers 2
.prologue
.line 40
const-class v1, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
monitor-enter v1
:try_start_3
sget-object v0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->instance:Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
if-nez v0, :cond_e
.line 41
new-instance v0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
invoke-direct {v0}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;-><init>()V
sput-object v0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->instance:Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
.line 43
:cond_e
sget-object v0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->instance:Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;
:try_end_10
.catchall {:try_start_3 .. :try_end_10} :catchall_12
monitor-exit v1
return-object v0
.line 40
:catchall_12
move-exception v0
monitor-exit v1
throw v0
.end method
.method public static getIntervalDays()I
.registers 4
.prologue
const/4 v0, 0x6
const/4 v1, 0x1
.line 100
const-string v2, "junk_notify_storage_setting"
const-string/jumbo v3, "subkey_storage_monitor_interval_days_auto_switch"
invoke-static {v2, v3, v1}, Lcom/cleanmaster/junkengine/junk/util/JunkCloudConfig;->getBooleanValue(Ljava/lang/String;Ljava/lang/String;Z)Z
move-result v2
.line 102
if-nez v2, :cond_18
.line 104
const-string v0, "junk_notify_storage_setting"
const-string/jumbo v1, "storage_monitor_interval_days"
const/4 v2, 0x3
invoke-static {v0, v1, v2}, Lcom/cleanmaster/junkengine/junk/util/JunkCloudConfig;->getIntValue(Ljava/lang/String;Ljava/lang/String;I)I
move-result v0
.line 117
:cond_17
:goto_17
return v0
.line 108
:cond_18
invoke-static {}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getInstanse()Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;
move-result-object v2
invoke-virtual {v2}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getInsufficientStorageNotifyCanceledCount()I
move-result v2
add-int/lit8 v2, v2, 0x1
.line 109
if-ge v2, v1, :cond_28
.line 112
:goto_24
if-gt v1, v0, :cond_17
move v0, v1
goto :goto_17
:cond_28
move v1, v2
goto :goto_24
.end method
.method private isOnTimeStartStorageMoniter()Z
.registers 9
.prologue
const/4 v1, 0x1
const/4 v0, 0x0
.line 76
iget-object v2, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mContext:Landroid/content/Context;
invoke-static {v2}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getInstanse(Landroid/content/Context;)Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;
move-result-object v2
invoke-virtual {v2}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getUsedSpaceSwitch()Z
move-result v2
if-nez v2, :cond_f
.line 92
:cond_e
:goto_e
return v0
.line 79
:cond_f
invoke-static {}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->getIntervalDays()I
move-result v2
.line 80
if-eqz v2, :cond_e
.line 84
iget-object v3, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mContext:Landroid/content/Context;
invoke-static {v3}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getInstanse(Landroid/content/Context;)Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;
move-result-object v3
invoke-virtual {v3}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getLastInsufficientStorageNotifyTime()J
move-result-wide v4
invoke-static {v4, v5}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v3
.line 85
invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
move-result-wide v4
.line 86
invoke-virtual {v3}, Ljava/lang/Long;->longValue()J
move-result-wide v6
sub-long/2addr v4, v6
int-to-long v2, v2
const-wide/32 v6, 0x36ee80
mul-long/2addr v2, v6
const-wide/16 v6, 0x18
mul-long/2addr v2, v6
cmp-long v2, v4, v2
if-ltz v2, :cond_e
.line 87
iget v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mCurTrigger:I
if-ne v0, v1, :cond_4d
.line 88
iget-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mContext:Landroid/content/Context;
invoke-static {v0}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->getInstanse(Landroid/content/Context;)Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;
move-result-object v0
invoke-static {}, Lcom/cleanmaster/hpsharelib/func/interested/InterestedUtils;->getInstance()Lcom/cleanmaster/hpsharelib/func/interested/InterestedUtils;
move-result-object v2
invoke-virtual {v2}, Lcom/cleanmaster/hpsharelib/func/interested/InterestedUtils;->isInInterestPlanState()Z
move-result v2
invoke-virtual {v0, v2}, Lcom/cleanmaster/hpsharelib/configmanager/ServiceConfigManager;->setneedDuInsufficientStorageNotify(Z)V
:cond_4d
move v0, v1
.line 90
goto :goto_e
.end method
.method private startStorageUsedMonitor()V
.registers 7
.prologue
.line 55
invoke-virtual {p0}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->stopMonitorTimer()V
.line 56
new-instance v0, Ljava/util/Timer;
invoke-direct {v0}, Ljava/util/Timer;-><init>()V
iput-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
.line 57
iget-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
new-instance v1, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor$1;
invoke-direct {v1, p0}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor$1;-><init>(Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;)V
const-wide/16 v2, 0x0
const-wide/32 v4, 0xea60
invoke-virtual/range {v0 .. v5}, Ljava/util/Timer;->schedule(Ljava/util/TimerTask;JJ)V
.line 66
return-void
.end method
# virtual methods
.method public startMonitor(I)V
.registers 3
.prologue
.line 47
iput p1, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mCurTrigger:I
.line 48
invoke-direct {p0}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->isOnTimeStartStorageMoniter()Z
move-result v0
if-nez v0, :cond_9
.line 52
:goto_8
return-void
.line 51
:cond_9
invoke-direct {p0}, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->startStorageUsedMonitor()V
goto :goto_8
.end method
.method public declared-synchronized stopMonitorTimer()V
.registers 2
.prologue
.line 69
monitor-enter p0
:try_start_1
iget-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
if-eqz v0, :cond_d
.line 70
iget-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
invoke-virtual {v0}, Ljava/util/Timer;->cancel()V
.line 71
const/4 v0, 0x0
iput-object v0, p0, Lcom/cleanmaster/funcrecommend/StorageSpaceMonitor;->mTimerStorageMonitor:Ljava/util/Timer;
:try_end_d
.catchall {:try_start_1 .. :try_end_d} :catchall_f
.line 73
:cond_d
monitor-exit p0
return-void
.line 69
:catchall_f
move-exception v0
monitor-exit p0
throw v0
.end method