安卓Scoket请求和返回的方法。
来源:互联网 发布:被雷劈死的国师知乎 编辑:程序博客网 时间:2024/05/19 22:04
算是做一个笔记吧。以免以后忘记了。
import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.Socket;import java.net.UnknownHostException;import android.util.Log;public class ServerSocketMethod {static boolean isrun = true;static String TAG = "ServerSocketMethod";static byte[] buffer = null;// 将组装好的数据进行Scoket上传和接受返回//@SuppressWarnings("resource")public static byte[] ServerSocketUpload(int Port, String IP,byte[] sendbytes) {Log.e(TAG, "Port+IP" + Port + IP);Socket socket;InetSocketAddress isa;try {// 上传Log.e(TAG, "上传开始");socket = new Socket();isa = new InetSocketAddress(IP, Port);// 创建socket对象,指定服务器端地址和端口号Log.e(TAG, "上传1");socket.connect(isa, 5000);// 设置5秒超时OutputStream out = socket.getOutputStream();// 创建一个输出流对象Log.e(TAG, "上传2");out.write(sendbytes); // 要输出给移动服务器的内容..Log.e(TAG, "上传3");out.close();out.flush();socket.close();// 接受返回ServerSocket tcpSocket = null;tcpSocket = new ServerSocket(Port);Socket s = null;Log.e(TAG, "返回了1");s = tcpSocket.accept();// 如果未收到数据,此句不会继续向下执行,一直处于监听状态s.setSoTimeout(5000);//设置接收5秒超时Log.e(TAG, "返回了2");InputStream in = s.getInputStream();Log.e(TAG, "返回了3");byte[] buffer = new byte[86];in.read(buffer);String DRb = new String(buffer, 0, 2);Log.e(TAG, "DRb:" + DRb);Log.e(TAG, "buffer:" + buffer);Log.e(TAG, "返回buffer");s.close();tcpSocket.close();return buffer;} catch (UnknownHostException e) {e.printStackTrace();return null;} catch (IOException e) {e.printStackTrace();return null;}}}
0 0
- 安卓Scoket请求和返回的方法。
- Scoket模拟HTTP请求响应的处理
- ssm安卓请求服务器返回json
- 安卓HTTP请求之get和post方法。
- Http的请求和返回
- 安卓BitmapFactory.decodeStream()返回null的问题解决方法
- 安卓activity捕获返回按钮关闭应用的方法
- 安卓BitmapFactory.decodeStream()返回null的问题解决方法
- ionic注册安卓物理返回键的处理方法
- 安卓客户端请求servlet上传文件的方法
- 安卓 get请求的URL获取简单方法
- TCP 和Http 和 Scoket 的区别
- HTTP 和 SCOKET 通信的区别? TCP,UDP 的连接方法?HTTP 几种常用方式
- scoket和浏览器的连接限制
- http和scoket通信的区别。
- 安卓客户端请求网页信息,返回的中文是乱码
- ionic对安卓返回和退出的处理
- 安卓简单的POST和GET请求
- Javaschedule与scheduleAtFixRate区别
- 主函数参数 char* argv[] 介绍
- c# 取出符号相隔中的内容
- 链接到邮箱(a标签)
- 32位系统支持多大内存 Windows32位/64位系统最大支持内存详解
- 安卓Scoket请求和返回的方法。
- ScrollView和ListView混用时引发的一系列问题的解决方案
- PAAS
- sublime 提示php错误
- 《冬暖花会开》热播 邓家佳虐心“灰姑娘”逆袭(视频)
- SQL Server数据库优化实战(一)
- python:解析js中常见的 不带引号的key的 json
- Java继承和接口的区别
- Mysql的with rollup功能(5.1以上版本)