7.android怎么写socket一对一聊天弹出界面1 用一个EditText作为用户名输入口 , 用一个按键确定 。
2 注册一个广播接收器 , 专门接收由后来的聊天界面发过来的消息广播(包括发信人 , 收信人 , 消息体) 。
3 创建一个客户端连接服务端的方法(要在线程中启动该方法) , 连接成功并获取输入输出流以后 , 再在里面启动一个输入流管理线程(接受并处理由服务端发送过来的消息) 。并通过intent启动下一个好友列表界面(同时把自身用户名发给下一界面) 。
4 对于输入流管理线程 , 要先判断接收到的是好友名单还是聊天消息发送两种广播 , (服务端发送两种信息时可以加个标签以便线程区分) 。然后分发出两种广播 , 一种广播后面的好友列表界面接受的在线好友名单 , 另一种广播出聊天界面接收的聊天信息 。
5 在菜单下做一个退出Activity按键 , 方便用户退出程序 。
6 当一切准备好以后 , 用户在输入用户名并点击确定 , 就可以实现以上操作 , 同时进入了好友列表界面(前提是能正确连接上服务端) 。
二 好友列表界面
1 注册一个广播接收器 , 专门接收由登录界面的输入流管理线程发送过来的好友名单广播
2 用listView逐个显示好友名单 。
3 获取用户登录界面发过来的自身用户名 。
4 给listView绑定一个监听器 , 当用户点击listView上的某一好友时 , 通过intent启动下一个聊天界面 , 并把所点击到的好友用户名以及自身用户名发给下一个界面 。
三 聊天界面
1 获取好友列表界面发送过来的聊天好友用户名以及自身用户名 , 并在Title上显示 。
2 用一个EditText作为聊天消息输入口 , 用一个按键确定输出 。
3 当用户点击确定以后 , 发送一个消息广播(包含发信人 , 收信人 , 消息体) , 让用户登录界面的消息广播接收器接收 。
4 注册一个广播接收器接受用户登录界面的输入流管理线程发送过来的消息 。
服务端设计思路:
消息处理界面(只有一个界面)
1 创建一个监听连接请求方法 (监听客户端发送连接请求 , 需要在线程中启动) 。
A 当用户发送连接请求时 , 生成socket对象 。由该socket对象生成输出流和输入流 , 从输入流中提取出客户端发送过来的用户名 , 把用户名放到sickName数组上 , 把输出流放在ArrayOut数组中 。
B 发送新客户端XXX连接成功广播 。
C 预先用sickName数组和ArrayOut数组创建发送好友列表方法(给各已连接客户端发送好友名单) , 在这里调用方法 。
D 新生成并启动输入流管理线程(接受并处理客户端发送过来的消息 , 由于有一个新用户生成 , 就新生一个输入流管理线程 , 所以客户端发送的消息不会混乱) 。
2 创建发送好友列表方法 。
3 注册两个广播接收器 , 一个接收新客户端XXX连接成功广播;另一个接收输入流管理线程发送过来的聊天消息 , 识别出目标对象 , 并向目标对象分别发送消息 。
4 在onResume方法中启动监听线程 。
5 在菜单下做一个退出Activity按键和刷新按钮(再次发送已连接用户名单给各客户端) 。
8.android中怎样消息提示框在Android开发中 , 显示消息框有多种方法 。
一、使用Toast显示提示信息框 Toast是一种非常方便的提示消息框 , 他会在程序界面上显示一个简单的提示信息 , 这个提示信息框用于向用户生成简单的提示信息 , 它具有两个特点 。1. Toast提示信息不会获得焦点 , 2. Toast提示信息过一段时间会自动消失 使用Toast来生成提示消息也非常简单 , 只要如下几个步骤:1. 调用Toast的构造器或makeText方法创建一个Toast对象 。
- 微信聊天怎么在写文字
- 美丽的学校框架怎么写
- 小孩上课和同学聊天老师叫我写保证书怎么写
- 论文的思路框架怎么写
- 匠字框拼音怎么写
- ssm框架怎么写测试类
- 写偏旁将字框怎么写
- lol窗口模式 lol窗口模式无边框好还是全屏好
- 迪丽热巴|豪门姐弟同框?《青春环游记》拟邀热巴吴磊,网友:能请到是神
- 电脑qq的聊天记录在哪个文件夹里面