SceneChargingDetectMonitor$WorkHandler.smali
.class Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;
.super Landroid/os/Handler;
.source "SceneChargingDetectMonitor.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2
name = "WorkHandler"
.end annotation
# instance fields
.field badChargeCount:I
.field nCounts:I
.field final synthetic this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# direct methods
.method public constructor <init>(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;Landroid/os/Looper;)V
.registers 4
.prologue
const/4 v0, 0x0
.line 149
iput-object p1, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
.line 150
invoke-direct {p0, p2}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V
.line 152
iput v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
.line 153
iput v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
.line 151
return-void
.end method
# virtual methods
.method public handleMessage(Landroid/os/Message;)V
.registers 15
.prologue
const/4 v12, 0x1
const-wide/16 v4, 0x0
const/4 v11, 0x2
const/4 v10, 0x0
.line 158
iget v0, p1, Landroid/os/Message;->what:I
packed-switch v0, :pswitch_data_162
.line 231
:goto_a
return-void
.line 160
:pswitch_b
invoke-virtual {p0, v11}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
goto :goto_a
.line 163
:pswitch_f
iget v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
.line 164
sget-boolean v0, Lcom/cleanmaster/boost/sceneengine/mainengine/scene/SceneDefine;->DEBUG:Z
if-eqz v0, :cond_33
.line 165
const-string v0, "cm_scene_detect"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "SceneChargingDetectMonitor ,nCounts = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
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-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 167
:cond_33
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
invoke-virtual {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->isNeedInterupted()Z
move-result v0
if-eqz v0, :cond_3f
.line 168
invoke-virtual {p0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
goto :goto_a
.line 171
:cond_3f
invoke-static {}, Lcom/cleanmaster/boost/sceneengine/mainengine/deps/Commons;->getCurrentElec()J
move-result-wide v6
.line 172
cmp-long v0, v6, v4
if-nez v0, :cond_4a
.line 173
invoke-virtual {p0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
.line 175
:cond_4a
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v8
monitor-enter v8
.line 176
:try_start_51
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v0
invoke-interface {v0}, Ljava/util/Queue;->size()I
move-result v0
const/16 v1, 0xa
if-ge v0, v1, :cond_cf
.line 177
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v0
invoke-static {v6, v7}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Queue;->offer(Ljava/lang/Object;)Z
.line 197
:cond_6c
monitor-exit v8
:try_end_6d
.catchall {:try_start_51 .. :try_end_6d} :catchall_125
.line 198
sget-boolean v0, Lcom/cleanmaster/boost/sceneengine/mainengine/scene/SceneDefine;->DEBUG:Z
if-eqz v0, :cond_89
.line 199
const-string v0, "cm_scene_detect"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "SceneChargingDetectMonitor , currentElec = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, v6, v7}, 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}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 201
:cond_89
cmp-long v0, v6, v4
if-lez v0, :cond_b1
.line 202
iget v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
.line 203
sget-boolean v0, Lcom/cleanmaster/boost/sceneengine/mainengine/scene/SceneDefine;->DEBUG:Z
if-eqz v0, :cond_b1
.line 204
const-string v0, "cm_scene_detect"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "SceneChargingDetectMonitor , badChargeCount = "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
iget v2, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
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-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 207
:cond_b1
iget v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
int-to-float v0, v0
const/high16 v1, 0x3f800000 # 1.0f
mul-float/2addr v0, v1
iget-object v1, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->LOOP_TIMES:I
invoke-static {v1}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$700(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)I
move-result v1
int-to-float v1, v1
div-float/2addr v0, v1
const/high16 v1, 0x3f000000 # 0.5f
cmpl-float v0, v0, v1
if-lez v0, :cond_128
.line 208
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# setter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mbIsElecAbnormal:Z
invoke-static {v0, v12}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$302(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;Z)Z
.line 209
invoke-virtual {p0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
goto/16 :goto_a
.line 181
:cond_cf
:try_start_cf
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v0
invoke-interface {v0}, Ljava/util/Queue;->iterator()Ljava/util/Iterator;
move-result-object v9
move-wide v2, v4
:goto_da
invoke-interface {v9}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_ed
invoke-interface {v9}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Long;
.line 182
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
add-long/2addr v0, v2
move-wide v2, v0
.line 183
goto :goto_da
.line 184
:cond_ed
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v0
invoke-interface {v0}, Ljava/util/Queue;->size()I
move-result v0
int-to-long v0, v0
div-long/2addr v2, v0
.line 186
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mHistoryQueue:Ljava/util/Queue;
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$600(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)Ljava/util/Queue;
move-result-object v0
invoke-interface {v0}, Ljava/util/Queue;->peek()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/Long;
invoke-virtual {v0}, Ljava/lang/Long;->longValue()J
move-result-wide v0
cmp-long v0, v2, v0
if-nez v0, :cond_6c
.line 189
sget-boolean v0, Lcom/cleanmaster/boost/sceneengine/mainengine/scene/SceneDefine;->DEBUG:Z
if-eqz v0, :cond_118
.line 190
const-string v0, "cm_scene_detect"
const-string v1, "SceneChargingDetectMonitor ,\u7eed\u91c7\u96c610\u6b21\uff0c\u6bcf\u6b21\u6570\u636e\u90fd\u662f\u76f8\u540c\u7684\uff0c\u4e3a\u65e0\u6548\u6570\u636e"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 192
:cond_118
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
const/4 v1, 0x0
# setter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mbIsElecAbnormal:Z
invoke-static {v0, v1}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$302(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;Z)Z
.line 193
const/4 v0, 0x0
invoke-virtual {p0, v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
.line 194
monitor-exit v8
goto/16 :goto_a
.line 197
:catchall_125
move-exception v0
monitor-exit v8
:try_end_127
.catchall {:try_start_cf .. :try_end_127} :catchall_125
throw v0
.line 211
:cond_128
iget v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
iget-object v1, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->LOOP_TIMES:I
invoke-static {v1}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$700(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)I
move-result v1
if-lt v0, v1, :cond_142
.line 212
sget-boolean v0, Lcom/cleanmaster/boost/sceneengine/mainengine/scene/SceneDefine;->DEBUG:Z
if-eqz v0, :cond_13d
.line 213
const-string v0, "cm_scene_detect"
const-string v1, "SceneChargingDetectMonitor , badChargeCount finish not fit scene"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 215
:cond_13d
invoke-virtual {p0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessage(I)Z
goto/16 :goto_a
.line 218
:cond_142
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# setter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->mbIsElecAbnormal:Z
invoke-static {v0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$302(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;Z)Z
.line 219
iget-object v0, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->this$0:Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;
# getter for: Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->LOOP_PERIOD:J
invoke-static {v0}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;->access$800(Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor;)J
move-result-wide v0
invoke-virtual {p0, v11, v0, v1}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->sendEmptyMessageDelayed(IJ)Z
goto/16 :goto_a
.line 223
:pswitch_152
iput v10, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->nCounts:I
.line 224
iput v10, p0, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->badChargeCount:I
.line 226
invoke-virtual {p0, v12}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->removeMessages(I)V
.line 227
invoke-virtual {p0, v11}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->removeMessages(I)V
.line 228
invoke-virtual {p0, v10}, Lcom/cleanmaster/boost/sceneengine/mainengine/monitor/SceneChargingDetectMonitor$WorkHandler;->removeMessages(I)V
goto/16 :goto_a
.line 158
nop
:pswitch_data_162
.packed-switch 0x0
:pswitch_152
:pswitch_b
:pswitch_f
.end packed-switch
.end method