集成GVoice的时候发现打开麦克风一直报错8193,没声音,首先两边要同时进入房间才会,至少一方正常打开了麦克风,另外一方打开了扬声器才能出现声音。有两处需要注意的地方,一是结束一定要退出房间,二是要注意以下1、2、3的顺序,并且1、2、3之间要间隔一定的时间间隔,个人猜测操作是异步的,连续调用时可能上一步操作还没完成,调用下一步便会引起报错。
1. 要先在首页创建时调用初始化方法
public void initGvoice(Context context, Activity activity) {
if (!bEngineInit) {
bEngineInit = true;
mContext = context;
mActivity = activity;
mVoiceEngine = GCloudVoiceEngine.getInstance(); // 获取 GCloudVoice 引擎实例
mVoiceEngine.init(context, activity); // 添加上下文信息
mVoiceEngine.SetAppInfo(appID, appKey, openID); // 设置基本业务信息
mVoiceEngine.Init(); // 初始化引擎
}
}
2. 过一会才能调用加入房间的方法
GCloudVoiceEngine mVoiceEngine = GCloudVoiceEngine.getInstance(); // 获取 GCloudVoice 引擎实例
mVoiceEngine.SetMode(GCloudVoiceEngine.Mode.RealTime); // 实时语音模式
int result= mVoiceEngine.JoinTeamRoom(roomName,msTimeOut);
3. 然后再过一会才能调用打开麦克风、打开扬声器的方法
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
GCloudVoiceEngine mVoiceEngine = GCloudVoiceEngine.getInstance();
int result1=mVoiceEngine.OpenMic();
GCloudVoiceEngine mVoiceEngine = GCloudVoiceEngine.getInstance();
int result2=mVoiceEngine.OpenSpeaker();
}},3000);