AudioFeatureImpl.smali
.class public Lio/dcloud/feature/audio/AudioFeatureImpl;
.super Ljava/lang/Object;
# interfaces
.implements Lio/dcloud/common/DHInterface/IFeature;
.implements Lio/dcloud/common/adapter/util/MessageHandler$IMessages;
# static fields
.field static final TAG:Ljava/lang/String; = "AudioFeatureImpl"
# instance fields
.field mAppsAudioObj:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/HashMap<",
"Ljava/lang/String;",
"Ljava/util/ArrayList;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.registers 2
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x0
.line 3
iput-object v0, p0, Lio/dcloud/feature/audio/AudioFeatureImpl;->mAppsAudioObj:Ljava/util/HashMap;
return-void
.end method
.method private findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
.registers 5
.line 1
invoke-direct {p0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->getAppObjList(Ljava/lang/String;)Ljava/util/ArrayList;
move-result-object p1
.line 3
invoke-virtual {p1}, Ljava/util/ArrayList;->isEmpty()Z
move-result v0
if-nez v0, :cond_28
.line 4
invoke-virtual {p1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object p1
:cond_e
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_28
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
.line 5
instance-of v1, v0, Lio/dcloud/feature/audio/AbsAudio;
if-eqz v1, :cond_e
.line 6
move-object v1, v0
check-cast v1, Lio/dcloud/feature/audio/AbsAudio;
iget-object v1, v1, Lio/dcloud/feature/audio/AbsAudio;->mUuid:Ljava/lang/String;
invoke-virtual {v1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_e
goto :goto_29
:cond_28
const/4 v0, 0x0
:goto_29
return-object v0
.end method
.method private getAppObjList(Ljava/lang/String;)Ljava/util/ArrayList;
.registers 4
.line 1
iget-object v0, p0, Lio/dcloud/feature/audio/AudioFeatureImpl;->mAppsAudioObj:Ljava/util/HashMap;
invoke-virtual {v0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/ArrayList;
if-nez v0, :cond_15
.line 3
new-instance v0, Ljava/util/ArrayList;
const/4 v1, 0x2
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
.line 4
iget-object v1, p0, Lio/dcloud/feature/audio/AudioFeatureImpl;->mAppsAudioObj:Ljava/util/HashMap;
invoke-virtual {v1, p1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_15
return-object v0
.end method
.method private putAppObjList(Ljava/lang/String;Ljava/lang/Object;)V
.registers 3
.line 1
invoke-direct {p0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->getAppObjList(Ljava/lang/String;)Ljava/util/ArrayList;
move-result-object p1
.line 2
invoke-virtual {p1, p2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-void
.end method
.method private removeAppObjFromList(Ljava/lang/String;Ljava/lang/Object;)V
.registers 3
.line 1
invoke-direct {p0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->getAppObjList(Ljava/lang/String;)Ljava/util/ArrayList;
move-result-object p1
if-eqz p1, :cond_9
.line 3
invoke-virtual {p1, p2}, Ljava/util/ArrayList;->remove(Ljava/lang/Object;)Z
:cond_9
return-void
.end method
.method private setCanPlay(Ljava/lang/String;Ljava/lang/String;Z)V
.registers 6
.line 1
invoke-direct {p0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->getAppObjList(Ljava/lang/String;)Ljava/util/ArrayList;
move-result-object p1
.line 2
invoke-virtual {p1}, Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
move-result-object p1
:cond_8
:goto_8
invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_29
invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
.line 3
instance-of v1, v0, Lio/dcloud/feature/audio/AudioPlayer;
if-eqz v1, :cond_8
.line 4
check-cast v0, Lio/dcloud/feature/audio/AudioPlayer;
.line 5
iget-object v1, v0, Lio/dcloud/feature/audio/AbsAudio;->mUuid:Ljava/lang/String;
invoke-virtual {v1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
if-nez v1, :cond_25
if-nez p3, :cond_25
.line 6
invoke-virtual {v0}, Lio/dcloud/feature/audio/AudioPlayer;->pause()V
.line 8
:cond_25
invoke-virtual {v0, p3}, Lio/dcloud/feature/audio/AudioPlayer;->setCanMix(Z)V
goto :goto_8
:cond_29
return-void
.end method
.method private setSpeakerphoneOn(Landroid/media/AudioManager;Z)V
.registers 5
const/4 v0, 0x1
if-eqz p2, :cond_a
.line 1
invoke-virtual {p1, v0}, Landroid/media/AudioManager;->setSpeakerphoneOn(Z)V
.line 2
invoke-virtual {p1, v0}, Landroid/media/AudioManager;->setMode(I)V
goto :goto_16
:cond_a
const/4 p2, 0x0
.line 4
invoke-virtual {p1, p2}, Landroid/media/AudioManager;->setSpeakerphoneOn(Z)V
const/4 v1, -0x1
.line 5
invoke-virtual {p1, p2, v0, v1}, Landroid/media/AudioManager;->setRouting(III)V
const/4 p2, 0x3
.line 6
invoke-virtual {p1, p2}, Landroid/media/AudioManager;->setMode(I)V
:goto_16
return-void
.end method
# virtual methods
.method public dispose(Ljava/lang/String;)V
.registers 2
return-void
.end method
.method public execute(Lio/dcloud/common/DHInterface/IWebview;Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
.registers 12
.line 1
invoke-interface {p1}, Lio/dcloud/common/DHInterface/IWebview;->obtainFrameView()Lio/dcloud/common/DHInterface/IFrameView;
move-result-object v0
invoke-interface {v0}, Lio/dcloud/common/DHInterface/IFrameView;->obtainApp()Lio/dcloud/common/DHInterface/IApp;
move-result-object v0
invoke-interface {v0}, Lio/dcloud/common/DHInterface/IApp;->obtainAppId()Ljava/lang/String;
move-result-object v0
.line 2
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "execute pJsArgs[0]="
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const/4 v2, 0x0
aget-object v3, p3, v2
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
const-string v3, "AudioFeatureImpl"
invoke-static {v3, v1}, Lio/dcloud/common/adapter/util/Logger;->d(Ljava/lang/String;Ljava/lang/String;)V
const-string v1, "AudioSyncExecMethod"
.line 3
invoke-virtual {v1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v1
const/4 v3, 0x2
const/4 v4, 0x3
const/4 v5, 0x0
const/4 v6, 0x1
if-eqz v1, :cond_108
.line 4
aget-object p2, p3, v2
.line 5
aget-object p3, p3, v6
invoke-static {p3}, Lio/dcloud/common/util/JSONUtil;->createJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
move-result-object p3
.line 6
invoke-virtual {p2}, Ljava/lang/String;->hashCode()I
invoke-virtual {p2}, Ljava/lang/String;->hashCode()I
const/4 v1, -0x1
invoke-virtual {p2}, Ljava/lang/String;->hashCode()I
move-result v7
sparse-switch v7, :sswitch_data_114
:goto_47
move v3, v1
goto :goto_88
:sswitch_49
const-string v3, "CreatePlayer"
invoke-virtual {p2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_52
goto :goto_47
:cond_52
const/4 v3, 0x5
goto :goto_88
:sswitch_54
const-string v3, "getStyles"
invoke-virtual {p2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_5d
goto :goto_47
:cond_5d
const/4 v3, 0x4
goto :goto_88
:sswitch_5f
const-string v3, "getPaused"
invoke-virtual {p2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_68
goto :goto_47
:cond_68
move v3, v4
goto :goto_88
:sswitch_6a
const-string v4, "getBuffered"
invoke-virtual {p2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_88
goto :goto_47
:sswitch_73
const-string v3, "getDuration"
invoke-virtual {p2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_7c
goto :goto_47
:cond_7c
move v3, v6
goto :goto_88
:sswitch_7e
const-string v3, "getPosition"
invoke-virtual {p2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p2
if-nez p2, :cond_87
goto :goto_47
:cond_87
move v3, v2
:cond_88
:goto_88
packed-switch v3, :pswitch_data_12e
goto/16 :goto_113
.line 22
:pswitch_8d
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p2
.line 23
invoke-static {p3, v6}, Lio/dcloud/common/util/JSONUtil;->getJSONObject(Lorg/json/JSONArray;I)Lorg/json/JSONObject;
move-result-object p3
.line 24
invoke-static {p3, p1}, Lio/dcloud/feature/audio/AudioPlayer;->createAudioPlayer(Lorg/json/JSONObject;Lio/dcloud/common/DHInterface/IWebview;)Lio/dcloud/feature/audio/AudioPlayer;
move-result-object p3
.line 25
iput-object p2, p3, Lio/dcloud/feature/audio/AbsAudio;->mUuid:Ljava/lang/String;
.line 26
invoke-interface {p1}, Lio/dcloud/common/DHInterface/IWebview;->obtainFrameView()Lio/dcloud/common/DHInterface/IFrameView;
move-result-object p1
invoke-interface {p1}, Lio/dcloud/common/DHInterface/IFrameView;->obtainApp()Lio/dcloud/common/DHInterface/IApp;
move-result-object p1
invoke-interface {p1}, Lio/dcloud/common/DHInterface/IApp;->obtainAppId()Ljava/lang/String;
move-result-object p1
invoke-direct {p0, p1, p3}, Lio/dcloud/feature/audio/AudioFeatureImpl;->putAppObjList(Ljava/lang/String;Ljava/lang/Object;)V
goto :goto_113
.line 45
:pswitch_ab
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p1
.line 46
invoke-direct {p0, v0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lio/dcloud/feature/audio/AudioPlayer;
.line 48
invoke-virtual {p3}, Lorg/json/JSONArray;->length()I
move-result p2
if-le p2, v6, :cond_bf
.line 49
invoke-static {p3, v6}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v5
.line 50
:cond_bf
invoke-virtual {p1, v5}, Lio/dcloud/feature/audio/AudioPlayer;->getStyles(Ljava/lang/String;)Ljava/lang/String;
move-result-object v5
goto :goto_113
.line 51
:pswitch_c4
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p1
.line 52
invoke-direct {p0, v0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lio/dcloud/feature/audio/AudioPlayer;
.line 53
invoke-virtual {p1}, Lio/dcloud/feature/audio/AudioPlayer;->isPause()Ljava/lang/String;
move-result-object v5
goto :goto_113
.line 58
:pswitch_d3
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p1
.line 59
invoke-direct {p0, v0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lio/dcloud/feature/audio/AudioPlayer;
.line 60
invoke-virtual {p1}, Lio/dcloud/feature/audio/AudioPlayer;->getBuffer()Ljava/lang/String;
move-result-object v5
goto :goto_113
.line 61
:pswitch_e2
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p1
.line 62
invoke-direct {p0, v0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lio/dcloud/feature/audio/AudioPlayer;
.line 63
invoke-virtual {p1}, Lio/dcloud/feature/audio/AudioPlayer;->getDuration()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v5
goto :goto_113
.line 68
:pswitch_f5
invoke-static {p3, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object p1
.line 69
invoke-direct {p0, v0, p1}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lio/dcloud/feature/audio/AudioPlayer;
.line 70
invoke-virtual {p1}, Lio/dcloud/feature/audio/AudioPlayer;->getPosition()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v5
goto :goto_113
:cond_108
new-array v0, v4, [Ljava/lang/Object;
aput-object p1, v0, v2
aput-object p2, v0, v6
aput-object p3, v0, v3
.line 107
invoke-static {p0, v0}, Lio/dcloud/common/adapter/util/MessageHandler;->sendMessage(Lio/dcloud/common/adapter/util/MessageHandler$IMessages;Ljava/lang/Object;)V
:goto_113
return-object v5
:sswitch_data_114
.sparse-switch
-0x57932961 -> :sswitch_7e
0x51e8b0a -> :sswitch_73
0x2121ce55 -> :sswitch_6a
0x29c3bc24 -> :sswitch_5f
0x2fefbbd8 -> :sswitch_54
0x5fbecf1d -> :sswitch_49
.end sparse-switch
:pswitch_data_12e
.packed-switch 0x0
:pswitch_f5
:pswitch_e2
:pswitch_d3
:pswitch_c4
:pswitch_ab
:pswitch_8d
.end packed-switch
.end method
.method public execute(Ljava/lang/Object;)V
.registers 19
move-object/from16 v1, p0
.line 108
move-object/from16 v0, p1
check-cast v0, [Ljava/lang/Object;
const/4 v2, 0x0
.line 109
aget-object v3, v0, v2
check-cast v3, Lio/dcloud/common/DHInterface/IWebview;
const/4 v4, 0x1
.line 110
aget-object v5, v0, v4
invoke-static {v5}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v5
const/4 v6, 0x2
.line 111
aget-object v0, v0, v6
check-cast v0, [Ljava/lang/String;
.line 112
invoke-interface {v3}, Lio/dcloud/common/DHInterface/IWebview;->obtainFrameView()Lio/dcloud/common/DHInterface/IFrameView;
move-result-object v7
invoke-interface {v7}, Lio/dcloud/common/DHInterface/IFrameView;->obtainApp()Lio/dcloud/common/DHInterface/IApp;
move-result-object v7
.line 113
invoke-interface {v7}, Lio/dcloud/common/DHInterface/IApp;->obtainAppId()Ljava/lang/String;
move-result-object v8
.line 114
aget-object v9, v0, v2
.line 115
aget-object v0, v0, v4
invoke-static {v0}, Lio/dcloud/common/util/JSONUtil;->createJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
move-result-object v0
.line 116
invoke-static {v0, v2}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v10
const-string v11, "RecorderExecMethod"
.line 117
invoke-virtual {v11, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v11
const-string v12, "stop"
const-string v13, "resume"
const-string v14, "pause"
if-eqz v11, :cond_d9
.line 118
invoke-interface {v3}, Lio/dcloud/common/DHInterface/IWebview;->getContext()Landroid/content/Context;
move-result-object v2
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v11, "Audio-"
invoke-virtual {v7, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v5
invoke-static {v2, v5}, Lio/dcloud/common/util/AppRuntime;->checkPrivacyComplianceAndPrompt(Landroid/content/Context;Ljava/lang/String;)V
:try_start_55
const-string v2, "record"
.line 120
invoke-virtual {v2, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_7e
.line 121
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v2
.line 122
invoke-static {v0, v6}, Lio/dcloud/common/util/JSONUtil;->getJSONObject(Lorg/json/JSONArray;I)Lorg/json/JSONObject;
move-result-object v0
.line 123
new-instance v4, Lio/dcloud/feature/audio/recorder/RecordOption;
invoke-direct {v4, v3, v0}, Lio/dcloud/feature/audio/recorder/RecordOption;-><init>(Lio/dcloud/common/DHInterface/IWebview;Lorg/json/JSONObject;)V
.line 124
iget-object v0, v4, Lio/dcloud/feature/audio/recorder/RecordOption;->mFileName:Ljava/lang/String;
invoke-static {v3, v2, v0}, Lio/dcloud/common/util/JSUtil;->checkOperateDirErrorAndCallback(Lio/dcloud/common/DHInterface/IWebview;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_73
return-void
.line 127
:cond_73
invoke-static {v4, v2}, Lio/dcloud/feature/audio/AudioRecorderMgr;->startRecorder(Lio/dcloud/feature/audio/recorder/RecordOption;Ljava/lang/String;)Lio/dcloud/feature/audio/AudioRecorderMgr;
move-result-object v0
.line 128
iput-object v10, v0, Lio/dcloud/feature/audio/AbsAudio;->mUuid:Ljava/lang/String;
.line 129
invoke-direct {v1, v8, v0}, Lio/dcloud/feature/audio/AudioFeatureImpl;->putAppObjList(Ljava/lang/String;Ljava/lang/Object;)V
goto/16 :goto_251
.line 130
:cond_7e
invoke-virtual {v14, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_8f
.line 131
invoke-direct {v1, v8, v10}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/dcloud/feature/audio/AudioRecorderMgr;
invoke-virtual {v0}, Lio/dcloud/feature/audio/AudioRecorderMgr;->pause()V
goto/16 :goto_251
.line 132
:cond_8f
invoke-virtual {v12, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_a6
.line 133
invoke-direct {v1, v8, v10}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/dcloud/feature/audio/AudioRecorderMgr;
.line 134
invoke-virtual {v0}, Lio/dcloud/feature/audio/AudioRecorderMgr;->stop()V
.line 135
invoke-virtual {v0}, Lio/dcloud/feature/audio/AudioRecorderMgr;->successCallback()V
.line 136
invoke-direct {v1, v8, v0}, Lio/dcloud/feature/audio/AudioFeatureImpl;->removeAppObjFromList(Ljava/lang/String;Ljava/lang/Object;)V
goto/16 :goto_251
.line 137
:cond_a6
invoke-virtual {v13, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_251
.line 138
invoke-direct {v1, v8, v10}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lio/dcloud/feature/audio/AudioRecorderMgr;
invoke-virtual {v0}, Lio/dcloud/feature/audio/AudioRecorderMgr;->resume()V
:try_end_b5
.catch Ljava/lang/Exception; {:try_start_55 .. :try_end_b5} :catch_b7
goto/16 :goto_251
:catch_b7
move-exception v0
.line 141
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
.line 142
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "RecorderExecMethod _methodName="
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v3, "; e ="
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Lio/dcloud/common/adapter/util/Logger;->e(Ljava/lang/String;)V
goto/16 :goto_251
:cond_d9
const-string v11, "AudioExecMethod"
.line 144
invoke-virtual {v11, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v5
if-eqz v5, :cond_251
const/4 v5, 0x0
const/4 v11, -0x1
.line 147
:try_start_e3
invoke-direct {v1, v8, v10}, Lio/dcloud/feature/audio/AudioFeatureImpl;->findAppObj(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
move-result-object v15
check-cast v15, Lio/dcloud/feature/audio/AudioPlayer;
:try_end_e9
.catch Ljava/lang/Exception; {:try_start_e3 .. :try_end_e9} :catch_23d
.line 148
:try_start_e9
invoke-virtual {v9}, Ljava/lang/String;->hashCode()I
move-result v16
sparse-switch v16, :sswitch_data_252
goto/16 :goto_16a
:sswitch_f2
const-string v12, "setRoute"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/4 v9, 0x6
goto/16 :goto_16b
:sswitch_fd
const-string v12, "playbackRate"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/16 v9, 0xb
goto/16 :goto_16b
:sswitch_109
const-string v12, "setStyles"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/16 v9, 0x9
goto :goto_16b
:sswitch_114
invoke-virtual {v9, v14}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
move v9, v4
goto :goto_16b
:sswitch_11c
const-string v12, "close"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/4 v9, 0x4
goto :goto_16b
:sswitch_126
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/4 v9, 0x3
goto :goto_16b
:sswitch_12e
const-string v12, "play"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
move v9, v2
goto :goto_16b
:sswitch_138
const-string v12, "setSessionCategory"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/16 v9, 0xa
goto :goto_16b
:sswitch_143
const-string v12, "removeEventListener"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/16 v9, 0x8
goto :goto_16b
:sswitch_14e
const-string v12, "addEventListener"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/4 v9, 0x7
goto :goto_16b
:sswitch_158
const-string v12, "seekTo"
invoke-virtual {v9, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
const/4 v9, 0x5
goto :goto_16b
:sswitch_162
invoke-virtual {v9, v13}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v9
if-eqz v9, :cond_16a
move v9, v6
goto :goto_16b
:cond_16a
:goto_16a
move v9, v11
:goto_16b
packed-switch v9, :pswitch_data_284
goto/16 :goto_251
.line 226
:pswitch_170
invoke-virtual {v0}, Lorg/json/JSONArray;->length()I
move-result v2
if-le v2, v4, :cond_251
.line 227
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v0
:try_end_17a
.catch Ljava/lang/Exception; {:try_start_e9 .. :try_end_17a} :catch_23a
.line 229
:try_start_17a
invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v2
if-nez v2, :cond_251
.line 230
invoke-static {v0}, Ljava/lang/Float;->parseFloat(Ljava/lang/String;)F
move-result v0
const/4 v2, 0x0
cmpl-float v2, v0, v2
if-lez v2, :cond_251
.line 232
invoke-virtual {v15, v0}, Lio/dcloud/feature/audio/AudioPlayer;->playbackRate(F)V
:try_end_18c
.catch Ljava/lang/Exception; {:try_start_17a .. :try_end_18c} :catch_251
goto/16 :goto_251
.line 233
:pswitch_18e
:try_start_18e
invoke-virtual {v0}, Lorg/json/JSONArray;->length()I
move-result v2
if-le v2, v4, :cond_198
.line 234
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v5
.line 235
:cond_198
invoke-virtual {v15, v5}, Lio/dcloud/feature/audio/AudioPlayer;->setSessionCategory(Ljava/lang/String;)V
goto/16 :goto_251
.line 236
:pswitch_19d
invoke-virtual {v0, v4}, Lorg/json/JSONArray;->optJSONObject(I)Lorg/json/JSONObject;
move-result-object v0
invoke-virtual {v15, v0}, Lio/dcloud/feature/audio/AudioPlayer;->setStyle(Lorg/json/JSONObject;)V
goto/16 :goto_251
.line 237
:pswitch_1a6
invoke-virtual {v0, v4}, Lorg/json/JSONArray;->optString(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v15, v0}, Lio/dcloud/feature/audio/AudioPlayer;->removeEventListener(Ljava/lang/String;)V
goto/16 :goto_251
.line 238
:pswitch_1af
invoke-virtual {v0, v4}, Lorg/json/JSONArray;->optString(I)Ljava/lang/String;
move-result-object v2
invoke-virtual {v0, v6}, Lorg/json/JSONArray;->optString(I)Ljava/lang/String;
move-result-object v0
invoke-virtual {v15, v2, v0}, Lio/dcloud/feature/audio/AudioPlayer;->addEventListener(Ljava/lang/String;Ljava/lang/String;)V
goto/16 :goto_251
.line 239
:pswitch_1bc
invoke-interface {v3}, Lio/dcloud/common/DHInterface/IWebview;->getContext()Landroid/content/Context;
move-result-object v3
const-string v5, "audio"
.line 240
invoke-virtual {v3, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Landroid/media/AudioManager;
.line 241
invoke-virtual {v0, v4}, Lorg/json/JSONArray;->optString(I)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
if-ne v0, v4, :cond_1d7
.line 243
invoke-direct {v1, v3, v2}, Lio/dcloud/feature/audio/AudioFeatureImpl;->setSpeakerphoneOn(Landroid/media/AudioManager;Z)V
goto/16 :goto_251
.line 245
:cond_1d7
invoke-direct {v1, v3, v4}, Lio/dcloud/feature/audio/AudioFeatureImpl;->setSpeakerphoneOn(Landroid/media/AudioManager;Z)V
:try_end_1da
.catch Ljava/lang/Exception; {:try_start_18e .. :try_end_1da} :catch_23a
goto/16 :goto_251
.line 246
:pswitch_1dc
:try_start_1dc
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v2
invoke-static {v2}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v2
if-ltz v2, :cond_251
mul-int/lit16 v2, v2, 0x3e8
.line 248
invoke-virtual {v15, v2}, Lio/dcloud/feature/audio/AudioPlayer;->seekTo(I)V
:try_end_1eb
.catch Ljava/lang/Exception; {:try_start_1dc .. :try_end_1eb} :catch_1ec
goto :goto_251
.line 252
:catch_1ec
:try_start_1ec
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v0
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v2
const-wide v4, 0x408f400000000000L # 1000.0
mul-double/2addr v2, v4
double-to-int v0, v2
if-ltz v0, :cond_251
.line 254
invoke-virtual {v15, v0}, Lio/dcloud/feature/audio/AudioPlayer;->seekTo(I)V
:try_end_200
.catch Ljava/lang/Exception; {:try_start_1ec .. :try_end_200} :catch_251
goto :goto_251
.line 255
:pswitch_201
:try_start_201
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->destory()V
.line 256
invoke-direct {v1, v8, v15}, Lio/dcloud/feature/audio/AudioFeatureImpl;->removeAppObjFromList(Ljava/lang/String;Ljava/lang/Object;)V
goto :goto_251
.line 257
:pswitch_208
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->stop()V
goto :goto_251
.line 258
:pswitch_20c
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->isCanMix()Z
move-result v0
invoke-direct {v1, v8, v10, v0}, Lio/dcloud/feature/audio/AudioFeatureImpl;->setCanPlay(Ljava/lang/String;Ljava/lang/String;Z)V
.line 259
invoke-static {v7}, Lio/dcloud/common/util/BaseInfo;->isUniAppAppid(Lio/dcloud/common/DHInterface/IApp;)Z
move-result v0
if-eqz v0, :cond_221
const-string v0, ""
.line 260
iput-object v0, v15, Lio/dcloud/feature/audio/AudioPlayer;->mFunId:Ljava/lang/String;
.line 261
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->play()V
goto :goto_251
.line 264
:cond_221
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->resume()V
goto :goto_251
.line 265
:pswitch_225
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->pause()V
goto :goto_251
.line 266
:pswitch_229
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->isCanMix()Z
move-result v2
invoke-direct {v1, v8, v10, v2}, Lio/dcloud/feature/audio/AudioFeatureImpl;->setCanPlay(Ljava/lang/String;Ljava/lang/String;Z)V
.line 267
invoke-static {v0, v4}, Lio/dcloud/common/util/JSONUtil;->getString(Lorg/json/JSONArray;I)Ljava/lang/String;
move-result-object v0
.line 268
iput-object v0, v15, Lio/dcloud/feature/audio/AudioPlayer;->mFunId:Ljava/lang/String;
.line 269
invoke-virtual {v15}, Lio/dcloud/feature/audio/AudioPlayer;->play()V
:try_end_239
.catch Ljava/lang/Exception; {:try_start_201 .. :try_end_239} :catch_23a
goto :goto_251
:catch_23a
move-exception v0
move-object v5, v15
goto :goto_23e
:catch_23d
move-exception v0
.line 357
:goto_23e
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
if-eqz v5, :cond_251
.line 359
sget-object v0, Lio/dcloud/common/constant/DOMException;->MSG_PARAMETER_ERROR:Ljava/lang/String;
invoke-virtual {v5, v11, v0}, Lio/dcloud/feature/audio/AudioPlayer;->failCallback(ILjava/lang/String;)V
.line 360
invoke-static {v11, v0}, Lio/dcloud/common/constant/DOMException;->toJSON(ILjava/lang/String;)Ljava/lang/String;
move-result-object v0
const-string v2, "onError"
invoke-virtual {v5, v2, v0}, Lio/dcloud/feature/audio/AudioPlayer;->execEvents(Ljava/lang/String;Ljava/lang/String;)V
:catch_251
:cond_251
:goto_251
return-void
:sswitch_data_252
.sparse-switch
-0x37b237d3 -> :sswitch_162
-0x3603e4ed -> :sswitch_158
-0x254d19b3 -> :sswitch_14e
-0x204670b6 -> :sswitch_143
-0x1722e70e -> :sswitch_138
0x348b34 -> :sswitch_12e
0x360802 -> :sswitch_126
0x5a5ddf8 -> :sswitch_11c
0x65825f6 -> :sswitch_114
0x2324efe4 -> :sswitch_109
0x50ca119b -> :sswitch_fd
0x53a67307 -> :sswitch_f2
.end sparse-switch
:pswitch_data_284
.packed-switch 0x0
:pswitch_229
:pswitch_225
:pswitch_20c
:pswitch_208
:pswitch_201
:pswitch_1dc
:pswitch_1bc
:pswitch_1af
:pswitch_1a6
:pswitch_19d
:pswitch_18e
:pswitch_170
.end packed-switch
.end method
.method public init(Lio/dcloud/common/DHInterface/AbsMgr;Ljava/lang/String;)V
.registers 3
.line 1
new-instance p1, Ljava/util/HashMap;
const/4 p2, 0x2
invoke-direct {p1, p2}, Ljava/util/HashMap;-><init>(I)V
iput-object p1, p0, Lio/dcloud/feature/audio/AudioFeatureImpl;->mAppsAudioObj:Ljava/util/HashMap;
return-void
.end method