c.smali
.class public Lcom/appff/haptic/base/c;
.super Ljava/lang/Thread;
.source "SourceFile"
# instance fields
.field final a:Ljava/lang/Object;
.field final b:Ljava/lang/Object;
.field final c:Landroid/content/Context;
.field volatile d:Z
.field e:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/appff/haptic/base/b;",
">;"
}
.end annotation
.end field
.field private final f:Ljava/lang/String;
# direct methods
.method public constructor <init>(Landroid/content/Context;)V
.registers 3
invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
const-string v0, "NonFFThread"
iput-object v0, p0, Lcom/appff/haptic/base/c;->f:Ljava/lang/String;
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
iput-object v0, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
const/4 v0, 0x0
iput-boolean v0, p0, Lcom/appff/haptic/base/c;->d:Z
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
iput-object p1, p0, Lcom/appff/haptic/base/c;->c:Landroid/content/Context;
return-void
.end method
# virtual methods
.method a()J
.registers 3
invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
move-result-wide v0
return-wide v0
.end method
.method public a(I)V
.registers 11
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_3
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_6
.catchall {:try_start_3 .. :try_end_6} :catchall_5b
:try_start_6
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
const-wide/16 v3, 0x5
const/4 v5, 0x1
const/4 v6, 0x0
if-le v2, v5, :cond_35
const-string v2, "NonFFThread"
const-string v7, "vibrating ,so interrupt it,size > 1,remove one"
invoke-static {v2, v7}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2, v5}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
iput-boolean v6, v2, Lcom/appff/haptic/base/b;->g:Z
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->a()J
move-result-wide v5
:goto_2f
int-to-long v7, p1
add-long/2addr v5, v7
add-long/2addr v5, v3
iput-wide v5, v2, Lcom/appff/haptic/base/b;->f:J
goto :goto_4b
:cond_35
if-lez v2, :cond_4b
const-string v2, "NonFFThread"
const-string v5, "vibrating ,so interrupt it,size == 1,just set next time play"
invoke-static {v2, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2, v6}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->a()J
move-result-wide v5
goto :goto_2f
:cond_4b
:goto_4b
monitor-exit v1
:try_end_4c
.catchall {:try_start_6 .. :try_end_4c} :catchall_58
:try_start_4c
iget-object p1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {p1}, Ljava/lang/Object;->notify()V
:try_end_51
.catch Ljava/lang/Exception; {:try_start_4c .. :try_end_51} :catch_52
.catchall {:try_start_4c .. :try_end_51} :catchall_5b
goto :goto_56
:catch_52
move-exception p1
:try_start_53
invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_56
monitor-exit v0
:try_end_57
.catchall {:try_start_53 .. :try_end_57} :catchall_5b
return-void
:catchall_58
move-exception p1
:try_start_59
monitor-exit v1
:try_end_5a
.catchall {:try_start_59 .. :try_end_5a} :catchall_58
:try_start_5a
throw p1
:catchall_5b
move-exception p1
monitor-exit v0
:try_end_5d
.catchall {:try_start_5a .. :try_end_5d} :catchall_5b
goto :goto_5f
:goto_5e
throw p1
:goto_5f
goto :goto_5e
.end method
.method public a(Lcom/appff/haptic/base/b;)V
.registers 7
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_3
iget-object v1, p0, Lcom/appff/haptic/base/c;->c:Landroid/content/Context;
invoke-static {v1}, Lcom/appff/haptic/base/d;->a(Landroid/content/Context;)Lcom/appff/haptic/base/d;
move-result-object v1
invoke-virtual {p1}, Lcom/appff/haptic/base/b;->b()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Lcom/appff/haptic/base/d;->a(Ljava/lang/String;)I
move-result v1
invoke-virtual {p1}, Lcom/appff/haptic/base/b;->d()I
move-result v2
add-int/2addr v2, v1
invoke-virtual {p1, v2}, Lcom/appff/haptic/base/b;->a(I)V
const-wide/16 v1, 0x0
iput-wide v1, p1, Lcom/appff/haptic/base/b;->f:J
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_20
.catchall {:try_start_3 .. :try_end_20} :catchall_4f
:try_start_20
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
const/4 v3, 0x0
if-lez v2, :cond_3a
const-string v2, "NonFFThread"
const-string v4, "vibrating ,interrupt it"
invoke-static {v2, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
iput-boolean v3, v2, Lcom/appff/haptic/base/b;->g:Z
:cond_3a
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2, v3, p1}, Ljava/util/List;->add(ILjava/lang/Object;)V
monitor-exit v1
:try_end_40
.catchall {:try_start_20 .. :try_end_40} :catchall_4c
:try_start_40
iget-object p1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {p1}, Ljava/lang/Object;->notify()V
:try_end_45
.catch Ljava/lang/Exception; {:try_start_40 .. :try_end_45} :catch_46
.catchall {:try_start_40 .. :try_end_45} :catchall_4f
goto :goto_4a
:catch_46
move-exception p1
:try_start_47
invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_4a
monitor-exit v0
:try_end_4b
.catchall {:try_start_47 .. :try_end_4b} :catchall_4f
return-void
:catchall_4c
move-exception p1
:try_start_4d
monitor-exit v1
:try_end_4e
.catchall {:try_start_4d .. :try_end_4e} :catchall_4c
:try_start_4e
throw p1
:catchall_4f
move-exception p1
monitor-exit v0
:try_end_51
.catchall {:try_start_4e .. :try_end_51} :catchall_4f
throw p1
.end method
.method public b()V
.registers 6
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_3
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_6
.catch Ljava/lang/Exception; {:try_start_3 .. :try_end_6} :catch_2c
.catchall {:try_start_3 .. :try_end_6} :catchall_2a
:try_start_6
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->isEmpty()Z
move-result v2
if-eqz v2, :cond_11
monitor-exit v1
:try_end_f
.catchall {:try_start_6 .. :try_end_f} :catchall_27
:try_start_f
monitor-exit v0
:try_end_10
.catchall {:try_start_f .. :try_end_10} :catchall_2a
return-void
:cond_11
:try_start_11
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
const/4 v3, 0x0
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
iget-boolean v4, v2, Lcom/appff/haptic/base/b;->g:Z
if-eqz v4, :cond_20
iput-boolean v3, v2, Lcom/appff/haptic/base/b;->g:Z
:cond_20
monitor-exit v1
:try_end_21
.catchall {:try_start_11 .. :try_end_21} :catchall_27
:try_start_21
iget-object v1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {v1}, Ljava/lang/Object;->notify()V
:try_end_26
.catch Ljava/lang/Exception; {:try_start_21 .. :try_end_26} :catch_2c
.catchall {:try_start_21 .. :try_end_26} :catchall_2a
goto :goto_30
:catchall_27
move-exception v2
:try_start_28
monitor-exit v1
:try_end_29
.catchall {:try_start_28 .. :try_end_29} :catchall_27
:try_start_29
throw v2
:try_end_2a
.catch Ljava/lang/Exception; {:try_start_29 .. :try_end_2a} :catch_2c
.catchall {:try_start_29 .. :try_end_2a} :catchall_2a
:catchall_2a
move-exception v1
goto :goto_32
:catch_2c
move-exception v1
:try_start_2d
invoke-virtual {v1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_30
monitor-exit v0
return-void
:goto_32
monitor-exit v0
:try_end_33
.catchall {:try_start_2d .. :try_end_33} :catchall_2a
throw v1
.end method
.method public b(Lcom/appff/haptic/base/b;)V
.registers 12
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_3
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_6
.catchall {:try_start_3 .. :try_end_6} :catchall_94
:try_start_6
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->isEmpty()Z
move-result v2
if-eqz v2, :cond_18
const-string p1, "NonFFThread"
const-string v2, "vib list is empty,do nothing!!"
invoke-static {p1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
monitor-exit v1
:try_end_16
.catchall {:try_start_6 .. :try_end_16} :catchall_91
:try_start_16
monitor-exit v0
:try_end_17
.catchall {:try_start_16 .. :try_end_17} :catchall_94
return-void
:cond_18
:try_start_18
invoke-virtual {p1}, Lcom/appff/haptic/base/b;->e()I
move-result v2
iget-object v3, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
const/4 v4, 0x0
invoke-interface {v3, v4}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/appff/haptic/base/b;
iget-boolean v4, v3, Lcom/appff/haptic/base/b;->g:Z
if-nez v4, :cond_2c
monitor-exit v1
:try_end_2a
.catchall {:try_start_18 .. :try_end_2a} :catchall_91
:try_start_2a
monitor-exit v0
:try_end_2b
.catchall {:try_start_2a .. :try_end_2b} :catchall_94
return-void
:cond_2c
const/4 v4, -0x1
if-eq v2, v4, :cond_32
:try_start_2f
invoke-virtual {v3, v2}, Lcom/appff/haptic/base/b;->c(I)V
:cond_32
invoke-virtual {p1}, Lcom/appff/haptic/base/b;->d()I
move-result v2
if-eq v2, v4, :cond_7b
invoke-virtual {v3}, Lcom/appff/haptic/base/b;->d()I
move-result v5
sub-int v5, v2, v5
invoke-virtual {v3}, Lcom/appff/haptic/base/b;->a()I
move-result v6
add-int/2addr v6, v5
const-string v7, "NonFFThread"
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v9, "updateParam interval:"
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v9, " pre interval:"
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Lcom/appff/haptic/base/b;->d()I
move-result v9
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v9, " delta:"
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v5, " duration:"
invoke-virtual {v8, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v6}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v7, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
invoke-virtual {v3, v2}, Lcom/appff/haptic/base/b;->b(I)V
invoke-virtual {v3, v6}, Lcom/appff/haptic/base/b;->a(I)V
:cond_7b
invoke-virtual {p1}, Lcom/appff/haptic/base/b;->f()I
move-result p1
if-eq p1, v4, :cond_84
invoke-virtual {v3, p1}, Lcom/appff/haptic/base/b;->d(I)V
:cond_84
monitor-exit v1
:try_end_85
.catchall {:try_start_2f .. :try_end_85} :catchall_91
:try_start_85
iget-object p1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {p1}, Ljava/lang/Object;->notify()V
:try_end_8a
.catch Ljava/lang/Exception; {:try_start_85 .. :try_end_8a} :catch_8b
.catchall {:try_start_85 .. :try_end_8a} :catchall_94
goto :goto_8f
:catch_8b
move-exception p1
:try_start_8c
invoke-virtual {p1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_8f
monitor-exit v0
:try_end_90
.catchall {:try_start_8c .. :try_end_90} :catchall_94
return-void
:catchall_91
move-exception p1
:try_start_92
monitor-exit v1
:try_end_93
.catchall {:try_start_92 .. :try_end_93} :catchall_91
:try_start_93
throw p1
:catchall_94
move-exception p1
monitor-exit v0
:try_end_96
.catchall {:try_start_93 .. :try_end_96} :catchall_94
throw p1
.end method
.method public c()V
.registers 4
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/appff/haptic/base/c;->d:Z
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_6
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_9
.catch Ljava/lang/Exception; {:try_start_6 .. :try_end_9} :catch_1d
.catchall {:try_start_6 .. :try_end_9} :catchall_1b
:try_start_9
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->clear()V
const/4 v2, 0x0
iput-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
monitor-exit v1
:try_end_12
.catchall {:try_start_9 .. :try_end_12} :catchall_18
:try_start_12
iget-object v1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {v1}, Ljava/lang/Object;->notify()V
:try_end_17
.catch Ljava/lang/Exception; {:try_start_12 .. :try_end_17} :catch_1d
.catchall {:try_start_12 .. :try_end_17} :catchall_1b
goto :goto_21
:catchall_18
move-exception v2
:try_start_19
monitor-exit v1
:try_end_1a
.catchall {:try_start_19 .. :try_end_1a} :catchall_18
:try_start_1a
throw v2
:try_end_1b
.catch Ljava/lang/Exception; {:try_start_1a .. :try_end_1b} :catch_1d
.catchall {:try_start_1a .. :try_end_1b} :catchall_1b
:catchall_1b
move-exception v1
goto :goto_23
:catch_1d
move-exception v1
:try_start_1e
invoke-virtual {v1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_21
monitor-exit v0
return-void
:goto_23
monitor-exit v0
:try_end_24
.catchall {:try_start_1e .. :try_end_24} :catchall_1b
throw v1
.end method
.method d()Z
.registers 4
iget-object v0, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v0
:try_start_3
iget-object v1, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v1}, Ljava/util/List;->iterator()Ljava/util/Iterator;
move-result-object v1
:cond_9
invoke-interface {v1}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_1c
invoke-interface {v1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
iget-boolean v2, v2, Lcom/appff/haptic/base/b;->g:Z
if-eqz v2, :cond_9
monitor-exit v0
const/4 v0, 0x1
return v0
:cond_1c
monitor-exit v0
const/4 v0, 0x0
return v0
:catchall_1f
move-exception v1
monitor-exit v0
:try_end_21
.catchall {:try_start_3 .. :try_end_21} :catchall_1f
goto :goto_23
:goto_22
throw v1
:goto_23
goto :goto_22
.end method
.method public run()V
.registers 11
const-string v0, "NonFFThread"
const-string v1, "non FF thread start!!"
:goto_4
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:cond_7
:goto_7
iget-boolean v0, p0, Lcom/appff/haptic/base/c;->d:Z
if-nez v0, :cond_11b
iget-object v0, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
if-nez v0, :cond_10
goto :goto_7
:cond_10
invoke-interface {v0}, Ljava/util/List;->isEmpty()Z
move-result v0
if-nez v0, :cond_f4
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->d()Z
move-result v0
if-nez v0, :cond_1e
goto/16 :goto_f4
:cond_1e
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->a()J
move-result-wide v0
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
const/4 v3, 0x0
invoke-interface {v2, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v2
check-cast v2, Lcom/appff/haptic/base/b;
iget-boolean v4, v2, Lcom/appff/haptic/base/b;->g:Z
if-nez v4, :cond_30
goto :goto_7
:cond_30
iget-wide v4, v2, Lcom/appff/haptic/base/b;->f:J
cmp-long v6, v4, v0
if-lez v6, :cond_71
sub-long/2addr v4, v0
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_3a
const-string v1, "NonFFThread"
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "go to sleep :"
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-static {v1, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iget-object v1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {v1, v4, v5}, Ljava/lang/Object;->wait(J)V
:try_end_55
.catch Ljava/lang/Exception; {:try_start_3a .. :try_end_55} :catch_58
.catchall {:try_start_3a .. :try_end_55} :catchall_56
goto :goto_5c
:catchall_56
move-exception v1
goto :goto_6f
:catch_58
move-exception v1
:try_start_59
invoke-virtual {v1}, Ljava/lang/Throwable;->printStackTrace()V
:goto_5c
monitor-exit v0
:try_end_5d
.catchall {:try_start_59 .. :try_end_5d} :catchall_56
iget v0, v2, Lcom/appff/haptic/base/b;->i:I
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->c()I
move-result v1
if-le v0, v1, :cond_7
const-string v0, "NonFFThread"
const-string v1, " looper finished,remove it!!"
:goto_69
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iput-boolean v3, v2, Lcom/appff/haptic/base/b;->g:Z
goto :goto_7
:goto_6f
:try_start_6f
monitor-exit v0
:try_end_70
.catchall {:try_start_6f .. :try_end_70} :catchall_56
throw v1
:cond_71
iget-object v0, p0, Lcom/appff/haptic/base/c;->c:Landroid/content/Context;
invoke-static {v0}, Lcom/appff/haptic/base/d;->a(Landroid/content/Context;)Lcom/appff/haptic/base/d;
move-result-object v4
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->b()Ljava/lang/String;
move-result-object v5
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->c()I
move-result v6
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->d()I
move-result v7
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->e()I
move-result v8
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->f()I
move-result v9
invoke-virtual/range {v4 .. v9}, Lcom/appff/haptic/base/d;->b(Ljava/lang/String;IIII)V
iget v0, v2, Lcom/appff/haptic/base/b;->i:I
add-int/lit8 v0, v0, 0x1
iput v0, v2, Lcom/appff/haptic/base/b;->i:I
const-string v0, "NonFFThread"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v4, " vib mHasVibNum:"
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget v4, v2, Lcom/appff/haptic/base/b;->i:I
invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
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
iget v0, v2, Lcom/appff/haptic/base/b;->i:I
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->c()I
move-result v1
if-lt v0, v1, :cond_b9
const-string v0, "NonFFThread"
const-string v1, " wake up vib looper is end ,remove it!!"
goto :goto_69
:cond_b9
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->a()J
move-result-wide v0
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->a()I
move-result v3
int-to-long v3, v3
add-long/2addr v0, v3
iput-wide v0, v2, Lcom/appff/haptic/base/b;->f:J
const-string v0, "NonFFThread"
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, " vib now:"
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Lcom/appff/haptic/base/c;->a()J
move-result-wide v3
invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
const-string v3, " mWhen:"
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-wide v3, v2, Lcom/appff/haptic/base/b;->f:J
invoke-virtual {v1, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
const-string v3, " lastTime:"
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Lcom/appff/haptic/base/b;->a()I
move-result v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
goto/16 :goto_4
:cond_f4
:goto_f4
iget-object v0, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
monitor-enter v0
:try_start_f7
iget-object v1, p0, Lcom/appff/haptic/base/c;->b:Ljava/lang/Object;
monitor-enter v1
:try_end_fa
.catch Ljava/lang/Exception; {:try_start_f7 .. :try_end_fa} :catch_114
.catchall {:try_start_f7 .. :try_end_fa} :catchall_112
:try_start_fa
iget-object v2, p0, Lcom/appff/haptic/base/c;->e:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->clear()V
monitor-exit v1
:try_end_100
.catchall {:try_start_fa .. :try_end_100} :catchall_10f
:try_start_100
const-string v1, "NonFFThread"
const-string v2, "nothing is in list,just wait!!"
invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
iget-object v1, p0, Lcom/appff/haptic/base/c;->a:Ljava/lang/Object;
invoke-virtual {v1}, Ljava/lang/Object;->wait()V
:try_end_10c
.catch Ljava/lang/Exception; {:try_start_100 .. :try_end_10c} :catch_114
.catchall {:try_start_100 .. :try_end_10c} :catchall_112
:goto_10c
:try_start_10c
monitor-exit v0
:try_end_10d
.catchall {:try_start_10c .. :try_end_10d} :catchall_112
goto/16 :goto_7
:catchall_10f
move-exception v2
:try_start_110
monitor-exit v1
:try_end_111
.catchall {:try_start_110 .. :try_end_111} :catchall_10f
:try_start_111
throw v2
:try_end_112
.catch Ljava/lang/Exception; {:try_start_111 .. :try_end_112} :catch_114
.catchall {:try_start_111 .. :try_end_112} :catchall_112
:catchall_112
move-exception v1
goto :goto_119
:catch_114
move-exception v1
:try_start_115
invoke-virtual {v1}, Ljava/lang/Throwable;->printStackTrace()V
goto :goto_10c
:goto_119
monitor-exit v0
:try_end_11a
.catchall {:try_start_115 .. :try_end_11a} :catchall_112
throw v1
:cond_11b
const-string v0, "NonFFThread"
const-string v1, "non FF thread quit!"
invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
return-void
.end method