聊天程序,swing做服务器,客户端为android和swing,可以进行相互之间的通讯,实现的功能如下图:
基本思路:
启动服务器:
启动服务器线程,等待客户端的连接,启动广播线程,负责向客户端发送消息
启动客户端线程,维持服务器与单个客户端的连接,负责接收从客户端发送过来的消息
android和swing客户端:
登陆进入聊天室:获得与服务器连接的输入和输出流,进行相互之间的额通讯
客户端也是一个线程对象,用于监听从服务器发送过来的信息,并更新界面
主要实现的技术:Socket网络编程、Thread多线程
大致流程图如下:
事实上用android和swing做客户端,在编码方面是没有啥什么区别的,都是socket通讯,只是使用android在更新界面的时候,不能通过非主线程去更新,因为android是线程安全的,更新界面必须在主线程里面操作,其他方面只是控件的API不同而已:Swing中的按钮、文本框等需要在代码中new生成,android中的控件可以定义在xml文件中,减小内存使用,实际上android中的界面和swing大同小异!!