请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

前面的照着写能跑通,改完分片封装后运行没问题,就是接收不显示消息了,调试也不知道从哪开始

正在回答 回答被采纳积分+3

4回答

Qiujuer 2019-06-30 21:34:16

在每个章节都有前缀的哈:
https://img1.sycdn.imooc.com//szimg/5d18ba4400013d5311460884.jpg

比如9-17的章节的代码就是在这里。

0 回复 有任何疑惑可以回复我~
Qiujuer 2019-06-19 19:11:47

关于为什么回答问题不及时的原因:http://www.imooc.com/article/288131

关于你说的:第9节还是有出入的问题,这个其实是没有出入的,你只需要把代码回滚到我讲解的章节即可,就可以得到对应章节的代码了,在这样的情况下进行对比会比较好哈。


你的这个问题只有2个办法:

  1. 对比找出问题

  2. 我调试看看了,但是目前我还没法调试哈,建议你对比一下代码看看,自己找问题也是一种学习。


关于课程章节的处理可以看这里:http://www.imooc.com/article/269126


0 回复 有任何疑惑可以回复我~
  • 提问者 kinpowoo #1
    我下载老师的代码后,不知道 回滚到哪个提交,
    commit 454ca6055ef722a390d49a89ee82f4101d63e89a (HEAD -> master, origin/master, origin/HEAD)
    【补充】桥接模式接入代码更新、支持及时语言
    
    commit 673c7ab4a50954d44ac1d155e39e0ce87e201e39
        【补充】桥接模式框架优化
    
    commit 1cc93f3259d066d274c799d9d2a374e642600909
        【补充】音频客户端代码更新
    
    commit e45fe0cb06befb222ac1a01857740b37052fabf7
        【补充】优化服务器桥接调度Dispatcher
    
    commit ac1a571393bfa9a17e9133a2a10fbe244624ac1e
        【补充】更新依赖SDK
    
    commit 891eb868513388f680c2ccac5e86c8f3de66e986
        【补充】升级gradle tools到3.3.2
    
    commit ba9354d8d73f1134bae5f05f4cb72e767e0ffff1
        【补充】修复UDP坐标多一字节的BUG
    回复 有任何疑惑可以回复我~ 2019-06-30 15:17:10
  • 提问者 kinpowoo #2
    终于找到问题所在了 , 在IoArgs -> readChannel(SocketChannel)方法里 ,我把 startWriting() 和 finishWriting()给删除了,不知道是哪一章听迷糊了,老师说这个两个不需要了,我就全给删了,导致后面分片时的 IoArgs的 limit 总是初始值 256,然后在 while循环里 hasRemaining()永远为true, 出不来了 哈哈
    回复 有任何疑惑可以回复我~ 2019-07-03 20:15:34
  • Qiujuer 回复 提问者 kinpowoo #3
    解决了就好哈,挺棒的,自己找到了问题所在。
    回复 有任何疑惑可以回复我~ 2019-07-03 21:48:59
95287 2019-06-08 21:14:58

客户端和服务端都debug运行,设置断点呀,你照着写难道不懂代码逻辑吗?在接收数据的几个地方设置断点,然后一步一步走就可以调试了啊。接收不显示消息有两个可能,一,消息没发出去。二,消息没接收。

对应的就是Post和Recevie

post那里你在AsyncSendDispatcher的post设置断点

一步一步走,除了看流程也要看各变量的值。

想要看你post的帧到底有没有给socketChannel写数据就在ioargs里writeTo(channel)那里设置断点

recevie那就是provideIoArgs那里,跟Post同理

0 回复 有任何疑惑可以回复我~
  • 提问者 kinpowoo #1
    两者应该都在 SocketChannelAdapter里,一个是outputCallback,一个是InputCallback,可是outputCallback断点会被捕捉到,而 inputCallback没有被调用,
    回复 有任何疑惑可以回复我~ 2019-06-10 19:21:19
  • 提问者 kinpowoo #2
    https://github.com/kinpowoo/SocketIM 工程在这,你能clone下来跑一下么
    回复 有任何疑惑可以回复我~ 2019-06-10 19:33:31
慕的地3563437 2019-06-06 10:43:07

你这问题,还是对比下老师的代码,看看是那点是不是写错了,调试就在你的接收模块调试

0 回复 有任何疑惑可以回复我~
  • 提问者 kinpowoo #1
    老师的代码最终版和我当前看到的第9节还是有出入的
    回复 有任何疑惑可以回复我~ 2019-06-10 19:16:20
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信