java android socket编程.doc

上传人:壹****1 文档编号:562747323 上传时间:2022-12-10 格式:DOC 页数:10 大小:22.57KB
返回 下载 相关 举报
java android socket编程.doc_第1页
第1页 / 共10页
java android socket编程.doc_第2页
第2页 / 共10页
java android socket编程.doc_第3页
第3页 / 共10页
java android socket编程.doc_第4页
第4页 / 共10页
java android socket编程.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《java android socket编程.doc》由会员分享,可在线阅读,更多相关《java android socket编程.doc(10页珍藏版)》请在金锄头文库上搜索。

1、android socket编程实例 android客户端通过socket与服务器进行通信可以分为以下几步:应用程序与服务器通信可以采用两种模式:TCP可靠通信 和UDP不可靠通信。(1)通过IP地址和端口实例化Socket,请求连接服务器: socket = new Socket(HOST, PORT); /host:为服务器的IP地址 port:为服务器的端口号(2)获取Socket流以进行读写,并把流包装进BufferWriter或者PrintWriter: PrintWriterout=newPrintWriter(newBufferedWriter(newOutputStreamWr

2、iter(socket.getOutputStream(),true); 这里涉及了三个类:socket.getOutputStream得到socket的输出字节流,OutputStreamWriter是字节流向字符流转换的桥梁,BufferWriter是字符流,然后再包装进PrintWriter。(3)对Socket进行读写 if (socket.isConnected() if (!socket.isOutputShutdown() out.println(msg); (4)关闭打开的流 out.close();在写代码的过程中一定要注意对socket 输入流 输出流的关闭下面是一个简单的

3、例子:main.xmlhtml view plaincopy1. 2. 6. 11. 15. 16. 21. 22. 下面是android客户端的源代码:java view plaincopy1. packagecom.android.SocketDemo;2. 3. importjava.io.BufferedReader;4. importjava.io.BufferedWriter;5. importjava.io.IOException;6. importjava.io.InputStreamReader;7. importjava.io.OutputStreamWriter;8. i

4、mportjava.io.PrintWriter;9. .Socket;10. 11. importandroid.app.Activity;12. importandroid.app.AlertDialog;13. importandroid.content.DialogInterface;14. importandroid.os.Bundle;15. importandroid.os.Handler;16. importandroid.os.Message;17. importandroid.view.View;18. importandroid.widget.Button;19. imp

5、ortandroid.widget.EditText;20. importandroid.widget.TextView;21. 22. publicclassSocketDemoextendsActivityimplementsRunnable23. privateTextViewtv_msg=null;24. privateEditTexted_msg=null;25. privateButtonbtn_send=null;26. /privateButtonbtn_login=null;27. privatestaticfinalStringHOST=192.168.1.223;28.

6、privatestaticfinalintPORT=9999;29. privateSocketsocket=null;30. privateBufferedReaderin=null;31. privatePrintWriterout=null;32. privateStringcontent=;33. 34. /*Calledwhentheactivityisfirstcreated.*/35. Override36. publicvoidonCreate(BundlesavedInstanceState)37. super.onCreate(savedInstanceState);38.

7、 setContentView(R.layout.main);39. 40. tv_msg=(TextView)findViewById(R.id.TextView);41. ed_msg=(EditText)findViewById(R.id.EditText01);42. /btn_login=(Button)findViewById(R.id.Button01);43. btn_send=(Button)findViewById(R.id.Button02);44. 45. try46. socket=newSocket(HOST,PORT);47. in=newBufferedRead

8、er(newInputStreamReader(socket.getInputStream();48. out=newPrintWriter(newBufferedWriter(newOutputStreamWriter(49. socket.getOutputStream(),true);50. catch(IOExceptionex)51. ex.printStackTrace();52. ShowDialog(loginexception+ex.getMessage();53. 54. btn_send.setOnClickListener(newButton.OnClickListen

9、er()55. 56. Override57. publicvoidonClick(Viewv)58. /TODOAuto-generatedmethodstub59. Stringmsg=ed_msg.getText().toString();60. if(socket.isConnected()61. if(!socket.isOutputShutdown()62. out.println(msg);63. 64. 65. 66. );67. newThread(SocketDemo.this).start();68. 69. 70. publicvoidShowDialog(Stringmsg)71. newAlertDialog.Builder(this).setTitle(notification).setMessage(msg)72. .setPositiveButton(ok,newDialogInterface.OnClickListener()73. 74. Override75.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号