索引
- 1.开发契机
- 2.软件概述
- 3.服务器端
- 4.客户端
-
- 4.1 登录界面:MainActivity
- 4.2 聊天界面:ChatRoom
- 5.特点
1.开发契机
很早之前就想自己做出一个仅实现远程聊天功能,而不带有任何冗余功能的超级轻量化聊天软件。参考了众多开源的聊天软件源代码,发现大部分是使用socket实现了私有 络的通信。当时也是苦恼了一段时间,最终使用了JSON格式对聊天记录进行存储,并通过HTTP协议对JSON数据进行传输,从而实现了这个轻量化的聊天软件。
2.软件概述
该聊天软件不涉及数据库,所有聊天记录以JSON的形式存储于服务器的内存中。用户通过在登录界面登录以后便进入了一个公共的聊天室,可以通过公共 络与任何一个同样使用这个应用的用户进行聊天。以下分别是登录界面和聊天界面。
3.服务器端
我在本机搭建了Tomcat服务器作为Web应用的容器,使用Servlet来实现聊天的业务逻辑。
由于使用到了JSON数据,所以需要在相应的Web应用项目中的 WEB-INFlib 文件夹下导入6个jar包定义了一个DiffServlet
在web.xml对该Servlet进行注册
4.客户端
Android客户端包含两个Activity,一个是登录界面MainActivity,一个是聊天界面ChatRoom。所有的活动要在AndroidManifest.xml文件中进行注册,为了使用户在应用中使用输入法使界面的背景图不会被压缩,所以在每个活动标签中加入
这样一条代码,就可以解决背景图片被压缩的问题了。
由于项目中要使用 络,所以要在AndroidManifest.xml文件中对授权对 络的访问,添加如下代码:
注意
如果我们使用的是http协议的域名,使用Android Studio开发的应用可能会与主机连接不上,出现这种情况可参考6 楼下的大懒喵的博客 OkHttp请求http链接失败的问题
4.1 登录界面:MainActivity
布局文件:
源代码:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!