VivoEarMonitor.smali
.class public Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;
.super Ljava/lang/Object;
.source "VivoEarMonitor.java"
# interfaces
.implements Lcn/rongcloud/rtc/earmonitor/EarMonitor;
# instance fields
.field private audioManager:Landroid/media/AudioManager;
.field private enabled:Z
.field private ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
.field private silentPlayer:Lcn/rongcloud/rtc/earmonitor/SilentPlayer;
# direct methods
.method public constructor <init>()V
.registers 2
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 2
iput-boolean v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
return-void
.end method
# virtual methods
.method public adjustVolume(I)V
.registers 4
.line 1
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-eqz v0, :cond_10
int-to-float p1, p1
const/high16 v1, 0x42c80000 # 100.0f
div-float/2addr p1, v1
const/high16 v1, 0x41700000 # 15.0f
mul-float p1, p1, v1
float-to-int p1, p1
.line 2
invoke-virtual {v0, p1}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->setMicVolParam(I)V
:cond_10
return-void
.end method
.method public destroy()V
.registers 2
.line 1
invoke-virtual {p0}, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->disable()V
.line 2
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-eqz v0, :cond_d
.line 3
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->closeKTVDevice()V
const/4 v0, 0x0
.line 4
iput-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
:cond_d
return-void
.end method
.method public disable()V
.registers 3
.line 1
iget-boolean v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
if-eqz v0, :cond_18
const/4 v0, 0x0
.line 2
iput-boolean v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
.line 3
iget-object v1, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->silentPlayer:Lcn/rongcloud/rtc/earmonitor/SilentPlayer;
invoke-virtual {v1}, Lcn/rongcloud/rtc/earmonitor/SilentPlayer;->stop()V
.line 4
iget-object v1, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-eqz v1, :cond_18
.line 5
invoke-virtual {v1, v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->setPlayFeedbackParam(I)V
.line 6
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->closeKTVDevice()V
:cond_18
return-void
.end method
.method public enable()I
.registers 4
.line 1
iget-boolean v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
const/4 v1, -0x1
if-nez v0, :cond_2f
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-nez v0, :cond_a
goto :goto_2f
.line 2
:cond_a
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->isDeviceSupportKaraoke()Z
move-result v0
if-nez v0, :cond_11
return v1
.line 3
:cond_11
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->audioManager:Landroid/media/AudioManager;
const/4 v1, 0x0
invoke-virtual {v0, v1}, Landroid/media/AudioManager;->setMode(I)V
.line 4
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
const/4 v2, 0x7
invoke-virtual {v0, v2}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->setCustomMode(I)V
.line 5
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->openKTVDevice()V
.line 6
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
const/4 v2, 0x1
invoke-virtual {v0, v2}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->setPlayFeedbackParam(I)V
.line 7
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->silentPlayer:Lcn/rongcloud/rtc/earmonitor/SilentPlayer;
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/SilentPlayer;->play()V
.line 8
iput-boolean v2, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
:cond_2f
:goto_2f
return v1
.end method
.method public init(Landroid/content/Context;)V
.registers 3
.line 1
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-nez v0, :cond_1b
const-string v0, "audio"
.line 2
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/media/AudioManager;
iput-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->audioManager:Landroid/media/AudioManager;
.line 3
invoke-static {p1}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->getInstance(Landroid/content/Context;)Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
move-result-object p1
iput-object p1, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
.line 4
new-instance p1, Lcn/rongcloud/rtc/earmonitor/SilentPlayer;
invoke-direct {p1}, Lcn/rongcloud/rtc/earmonitor/SilentPlayer;-><init>()V
iput-object p1, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->silentPlayer:Lcn/rongcloud/rtc/earmonitor/SilentPlayer;
:cond_1b
return-void
.end method
.method public isEnabled()Z
.registers 2
.line 1
iget-boolean v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->enabled:Z
return v0
.end method
.method public isSupported()Z
.registers 2
.line 1
iget-object v0, p0, Lcn/rongcloud/rtc/earmonitor/VivoEarMonitor;->ktvHelper:Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;
if-eqz v0, :cond_c
invoke-virtual {v0}, Lcn/rongcloud/rtc/earmonitor/VivoKTVHelper;->isDeviceSupportKaraoke()Z
move-result v0
if-eqz v0, :cond_c
const/4 v0, 0x1
goto :goto_d
:cond_c
const/4 v0, 0x0
:goto_d
return v0
.end method
.method public toString()Ljava/lang/String;
.registers 2
const-string v0, "VivoEarMonitor"
return-object v0
.end method