AnyChat技术支持论坛

标题: 通话完毕后,退出room报错了 [打印本页]

作者: dcxj    时间: 2013-11-12 13:48
标题: 通话完毕后,退出room报错了
我在退出room的时候,调用的方法:
- (void) OnLeaveRoomBtnClicked:(id)sender
{
    [AnyChatPlatform LeaveRoom:-1];
    [AnyChatPlatform Logout];
    [self.navigationController popViewControllerAnimated:YES];
    //注释了原方法;
    //[[AppDelegate GetApp].viewController showHallView];
}
但是在调用[AnyChatPlatform LeaveRoom:-1];时就报错了AudioQueueEnqueueBuffer error=-66632,请问这是什么原因呢,谢谢了




作者: dcxj    时间: 2013-11-12 13:55
我这边操作基本上都没问题,就是在退出的时候,就报了那个错误,就crash了,这是什么原因呢,我看了demo里面也差不多的,请帮忙指点一下,谢谢了
作者: admin    时间: 2013-11-12 14:01
您好,请问使用我们标准的示例程序,LeaveRoom时会报错吗?
作者: dcxj    时间: 2013-11-12 14:09
你好,demo不会,我就是把demo稍微改了一下
[AnyChatPlatform Login:[defaults objectForKey:@"userName"] : [defaults objectForKey:@"passWord"]];
[AnyChatPlatform EnterRoom:[_fRoomId intValue] :@""];
这是进入room的方法,这个时候直接退出room调用上面的方法是不会报错了,也很正常,但是只要我进行过视频通话之后,就会报错;
我视频通话完毕之后调用:
[AnyChatPlatform UserSpeakControl: -1 : NO];
    [AnyChatPlatform UserCameraControl: -1 : NO];
   
    [AnyChatPlatform UserSpeakControl: self->iRemoteUserId : NO];
    [AnyChatPlatform UserCameraControl: self->iRemoteUserId : NO];
   
    self->iRemoteUserId = -1;
然后pop出了视频页面,进入到room列表,这个时候再调用[AnyChatPlatform LeaveRoom:-1];就会报上述的错误了
作者: admin    时间: 2013-11-12 14:17
您好,在LeaveRoom之前加一个200ms的延迟,看是否可以解决该问题?
作者: dcxj    时间: 2013-11-12 14:29
在点击退出的按钮操作的时候吗,还是在pop页面退出的时候呢?

作者: dcxj    时间: 2013-11-12 14:35
不行,我在
sleep(2);
    [AnyChatPlatform LeaveRoom:-1];
    sleep(2);
    [AnyChatPlatform Logout];
    sleep(2);
    [self.navigationController popViewControllerAnimated:YES];
还是报错
作者: admin    时间: 2013-11-12 14:40
您好,不要用Sleep,建议用如下的方式来延迟:
  1. [self performSelector:@selector(LeaveRoomAction:) withObject:nil afterDelay:0.5];


  2. -(void)LeaveRoomAction
  3. {
  4.     [AnyChatPlatform LeaveRoom:-1];
  5. }
复制代码

作者: admin    时间: 2013-11-12 16:08
您好,请问问题解决了吗?
作者: dcxj    时间: 2013-11-13 19:58
您好,正好有事没看到,改成了上述方式,可是问题还是存在,执行[AnyChatPlatform LeaveRoom:-1];就会报错
2013-11-13 19:45:54.235 juesheng[1780:8903] AudioQueueEnqueueBuffer error=-66632
2013-11-13 19:45:54.239 juesheng[1780:8903] AudioQueueEnqueueBuffer error=-66632
2013-11-13 19:45:54.241 juesheng[1780:8903] AudioQueueEnqueueBuffer error=-66632

调试信息截图见附件照片
谢谢了

123.jpg (75.52 KB, 下载次数: 6660)

123.jpg

作者: dcxj    时间: 2013-11-13 20:03
主要是执行[AnyChatPlatform LeaveRoom:-1];报错,页面也取消跳转了,个人觉得增加延时好像跟它没关系,谢谢
作者: dcxj    时间: 2013-11-13 20:24
您好,问题解决了,我截调试信息我才发现应该是我释放资源的问题,实在是太感谢了,贵公司这技术支持太给力了,赞一个




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3