




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于Android 的socket编程【以聊天为例】下面,用敲门的方式演示Android如何实现套接字的通信。本例实现功能如下:Server端开启服务Client端发起链接请求,并向Server端发送数据Server端响应请求,并在Server显示,向Client端返回数据Client端接收Server的数据并显示本例效果如下:终端1:终端2:Server端:本例源代码如下:Server端:package com.android.Yao;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import .ServerSocket;import .Socket;public class YaoChatServer extends Thread private YaoChatServer() throws IOException CreateSocket();/创建Socket服务器 public void run() Socket client;String txt;try while (true)/线程无限循环,实时监听socket端口client=ResponseSocket(); /响应客户端链接请求。while(true)txt=ReceiveMsg(client); System.out.println(txt);/链接获得客户端发来消息,并将其显示在Server端的屏幕上SendMsg(client,txt);/向客户端返回消息if(true)break;/中断,继续等待链接请求CloseSocket(client);/关闭此次链接 catch (IOException e) System.out.println(e);private ServerSocket server = null;private static final int PORT = 5000;private BufferedWriter writer;private BufferedReader reader;private void CreateSocket() throws IOExceptionserver = new ServerSocket(PORT, 100);System.out.println(Server starting.); private Socket ResponseSocket() throws IOExceptionSocket client = server.accept(); System.out.println(client connected.);return client;private void CloseSocket(Socket socket) throws IOExceptionreader.close();writer.close();socket.close();System.out.println(client closed.);private void SendMsg(Socket socket,String Msg) throws IOException writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream();writer.write(Msg+n);writer.flush();private String ReceiveMsg(Socket socket) throws IOExceptionreader = new BufferedReader(new InputStreamReader(socket.getInputStream(); System.out.println(server get input from client socket.);String txt=Sever send:+reader.readLine();return txt;public static void main(final String args) throws IOException YaoChatServer yaochatserver = new YaoChatServer();if (yaochatserver != null) yaochatserver.start();Client端:package com.android.Yao;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.IOException;import .UnknownHostException;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import .Socket;import android.app.Activity;import android.os.Bundle;import android.view.View;import android.widget.*;public class YaoChatRoomAndroid extends Activity /* Called when the activity is first created. */Overridepublic void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.chatroom);findviews();setonclick();private EditText chattxt;private TextView chattxt2;private Button chatok;public void findviews()chattxt = (EditText)this.findViewById(R.id.chattxt);chattxt2 = (TextView)this.findViewById(R.id.chattxt2);chatok = (Button)this.findViewById(R.id.chatOk);private void setonclick()chatok.setOnClickListener(new View.OnClickListener() Overridepublic void onClick(View v) try connecttoserver(chattxt.getText().toString(); catch (UnknownHostException e) / TODO Auto-generated catch blocke.printStackTrace(); catch (IOException e) / TODO Auto-generated catch blocke.printStackTrace(););public void connecttoserver(String socketData) throws UnknownHostException, IOExceptionSocket socket=RequestSocket(07,5000);SendMsg(socket,socketData); String txt = ReceiveMsg(socket);this.chattxt2.setText(txt); private Socket RequestSocket(String host,int port) throws UnknownHostException, IOException Socket socket = new Socket(host, port);return socket;private void SendMsg(Socket socket,String msg) throws IOExceptionBufferedWriter writer = new BufferedWriter(new OutputStreamWriter(socket.getOutputStream();writer.write(msg.replace(n, )+n);writer.fl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某大型集团管理咨询项目建议书
- 工业废弃地到生态校区的转型策略研究
- 工业旅游发展与城市形象塑造策略研究
- 工业机器人设计与操作流程
- 工业废物处理的先进技术介绍
- 工业机器人技术及发展趋势分析
- 工业污染防治及废弃物管理
- 工业自动化中的智能机器人技术探讨
- 工业涂装的环保要求与措施
- 工业设计中的创新理念与方法
- 乒乓球训练安全协议书
- 办公区安全隐患检查
- 低压电工作业复审培训
- 严寒和寒冷地区居住建筑节能设计标准JGJ26-2010
- 科技助力植树节:无人机、机器人种树新趋势
- 冲刺高考英语词性转换(易错)背诵版默写版(各版本通用)
- 《Python语言程序设计》课程标准
- 电大国开专科(附答案)《办公室管理》形考在线(形考任务五)试题
- 砖混厂房改钢结构施工方案
- 团体保险投保单
- 2022年失业保险基金绩效评价报告(最终稿)
评论
0/150
提交评论