注意:之前上传的同类资源1.0、1.1、1.2、1.3版本有一些小问题,现在上传修改后的最新版本,各位请注意下载最新版的,主界面的ip地址和port端口号是我的一个服务器上的地址,可以正常连接
一、端点连接机制:基于客户端到服务器端的socket连接,在服务器端利用android系统提供的线程池处理用户的并发访问。
二、消息发送原理:在服务器端缓存所有当前在线用户,对于接收到的文字消息或语音消息循环发送到所有在线客户端。
三、消息发送格式:对于所有的发送消息,都包含一条标识行,用来标识该消息的类型(注册、登录、退出、普通消息、语音消息)。对于网络字节数据流,采用length+data的格式,因为基于socket打开的数据流,好像只有这种格式最可靠,不会出现各种莫名其妙的错误。
四、项目操作流程:项目分为服务器端和客户端。
1、服务器端:将服务器端代码导入eclipse中,打开服务器窗口界面,输入合适的端口号,点击启动按钮启动服务器。
2、客户端代码直接导入到eclipse中,安装部署即可运行,端口号及IP地址要与服务器端保持一致。
3、推荐测试方式可以用一台真机跟模拟器来实现信息的交互,前提是手机跟电脑必须是在同一个无线网路,请自行设置。
五、必须注意事项:以下几点是在运行项目时必须注意的,否则有些功能操作时就会报错。
1、对于模拟器端,发送语音消息会报异常,所以测试时需用真机发语音消息
2、在录制语音时,不同的设备支持的采样频率有所差别,如在录制声音时报错或没有声音出来,可修改audioRecord中的采样率,该值保存在常量当中。
六、这个纯属是自己作为一个接触android系统新手的练手项目,可以说一边查找资料、一边在慢慢摸索,弄了比较长时间,许多比较棘手的问题总算是解决了。如果你是一个新手,这个项目了解清楚了,可以说算是入门了,恭喜你可以进行android开发相关的工作了。最后界面上有一个问题,就是popuwindow里面的按钮单击后就不见了,比较影响美观哪,望谁有办法解决它,反正我是搞不定了
七、这个项目完成可不止十天哪,所以收10分不过分,如果你觉得很需要一个聊天类的应用参考实践一下,那这就是你所需要的,这只是一个一对多的聊天应用,当然你可以自己扩展成一对一的,其实就是再加一个页面就可以了,代码上稍作修改即可,发消息时传一个目标用户的ID而已。不多说了,这个项目如果有时间的话,我也会再做一些优化和修改,到时再发出来吧
2019-12-21 19:59:23
7.23MB
聊天室
1