AudioMgr$PermissionCheckThread.smali
.class Lcom/FF/voiceengine/AudioMgr$PermissionCheckThread;
.super Ljava/lang/Thread;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/FF/voiceengine/AudioMgr;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0xa
name = "PermissionCheckThread"
.end annotation
# direct methods
.method private constructor <init>()V
.registers 1
invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
return-void
.end method
.method synthetic constructor <init>(Lcom/FF/voiceengine/AudioMgr$1;)V
.registers 2
invoke-direct {p0}, Lcom/FF/voiceengine/AudioMgr$PermissionCheckThread;-><init>()V
return-void
.end method
# virtual methods
.method public run()V
.registers 5
const-string v0, "AudioMgr"
:try_start_2
const-string v1, "PermissionCheck starts..."
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:cond_7
invoke-static {}, Ljava/lang/Thread;->interrupted()Z
move-result v1
if-nez v1, :cond_65
# operator++ for: Lcom/FF/voiceengine/AudioMgr;->requestPermissionCount:I
invoke-static {}, Lcom/FF/voiceengine/AudioMgr;->access$608()I
const-wide/16 v1, 0x1388
invoke-static {v1, v2}, Ljava/lang/Thread;->sleep(J)V
# getter for: Lcom/FF/voiceengine/AudioMgr;->mContext:Landroid/content/Context;
invoke-static {}, Lcom/FF/voiceengine/AudioMgr;->access$000()Landroid/content/Context;
move-result-object v1
if-eqz v1, :cond_35
# getter for: Lcom/FF/voiceengine/AudioMgr;->mContext:Landroid/content/Context;
invoke-static {}, Lcom/FF/voiceengine/AudioMgr;->access$000()Landroid/content/Context;
move-result-object v1
instance-of v1, v1, Landroid/app/Activity;
if-eqz v1, :cond_35
# getter for: Lcom/FF/voiceengine/AudioMgr;->mContext:Landroid/content/Context;
invoke-static {}, Lcom/FF/voiceengine/AudioMgr;->access$000()Landroid/content/Context;
move-result-object v1
check-cast v1, Landroid/app/Activity;
const-string v2, "android.permission.RECORD_AUDIO"
invoke-static {v1, v2}, Landroidx/core/content/a;->a(Landroid/content/Context;Ljava/lang/String;)I
move-result v1
if-nez v1, :cond_35
invoke-static {}, Lcom/FF/voiceengine/NativeEngine;->resetMicrophone()V
goto :goto_65
:cond_35
# getter for: Lcom/FF/voiceengine/AudioMgr;->requestPermissionCount:I
invoke-static {}, Lcom/FF/voiceengine/AudioMgr;->access$600()I
move-result v1
const/4 v2, 0x3
if-le v1, v2, :cond_7
const/4 v1, 0x0
# setter for: Lcom/FF/voiceengine/AudioMgr;->requestPermissionCount:I
invoke-static {v1}, Lcom/FF/voiceengine/AudioMgr;->access$602(I)I
const/16 v1, -0xca
invoke-static {v1}, Lcom/FF/voiceengine/NativeEngine;->callbackPermissionStatus(I)V
:try_end_45
.catch Ljava/lang/InterruptedException; {:try_start_2 .. :try_end_45} :catch_60
.catchall {:try_start_2 .. :try_end_45} :catchall_46
goto :goto_65
:catchall_46
move-exception v1
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "PermissionCheck caught a throwable:"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/Throwable;->getMessage()Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_65
:catch_60
const-string v1, "PermissionCheck interrupted"
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
:cond_65
:goto_65
const-string v1, "PermissionCheck exit"
invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
return-void
.end method