Android端通过Usb建立Socket通讯(实时发送视频数据)
来源:互联网 发布:yessat 知乎 编辑:程序博客网 时间:2024/05/29 04:37
1.创建出 ServerSocket
serverSocket = new ServerSocket(端口10086);
2.adnroid端保持等待客户端等待连接状态
Socket accept = serverSocket.accept();
3.添加网络请求权限
<uses-permission android:name="android.permission.INTERNET" />
4.使用ADB命令端口映射 转端口
adb forward tcp:12580 tcp:10086
例:adb forward tcp:PC端连接的端口(12580) tcp:Android写的端口(10086)
5.pc端建立客户端连接
客户端连接的IP是127.0.0.1(就是本地IP),端口是:映射后的端口-以上面为例(12580)
//推荐一个好用的调试工具 SocketTools
贴上代码
package socketdemosss.xiake.com.testdemo.Server;import android.app.IntentService;import android.content.Intent;import android.util.Log;import org.greenrobot.eventbus.EventBus;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.DataInputStream;import java.io.DataOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.OutputStreamWriter;import java.net.ServerSocket;import java.net.Socket;import socketdemosss.xiake.com.testdemo.bean.AnyEventTypeTest;/** * Created by Administrator on 2017/6/29. */public class SocketServer extends IntentService { private int PROT = 10086; private Socket accept; private InputStream in =null; public SocketServer() { super("SocketServer"); } @Override protected void onHandleIntent(Intent intent) { ServerSocket serverSocket = null; BufferedOutputStream out = null; //out = new BufferedOutputStream(accept.getOutputStream()); try { serverSocket = new ServerSocket(PROT); accept = serverSocket.accept(); } catch (IOException e) { e.printStackTrace(); } while (true){ try { while (accept.isConnected() == true){ EventBus.getDefault().post(new AnyEventTypeTest("连接上了")); in = accept.getInputStream(); String request = null; request = readCMDFromSocket(in); EventBus.getDefault().post(new AnyEventTypeTest(request)); } } catch (IOException e) { e.printStackTrace(); }finally { try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } } /* 读取命令 */ public static String readCMDFromSocket(InputStream in) { int MAX_BUFFER_BYTES = 2048; String msg = ""; byte[] tempbuffer = new byte[MAX_BUFFER_BYTES]; try { int numReadedBytes = in.read(tempbuffer, 0, tempbuffer.length); msg = new String(tempbuffer, 0, numReadedBytes, "gbk"); tempbuffer = null; } catch (Exception e) { } // Log.v(Service139.TAG, "msg=" + msg); return msg; }// while (true){// BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));// String r = null;// try {// r = bufferedReader.readLine();// if (r.contains("\\&")){// r = r.replaceAll("\\\\&","\n");//// }// } catch (IOException e) {// e.printStackTrace();// }////// return r;//// }} }
阅读全文
0 0
- Android端通过Usb建立Socket通讯(实时发送视频数据)
- Android摄像头采集的视频数据流如何通过Socket实时发送到目标服务端
- 关于手机采集摄像头视频socket实时传播 (由服务端采集发送数据)
- (视频相关)Android手机间通过Socket,Udp实时传输视频
- Android socket通过UDP的方式发送,接收数据
- Android与PC通过USB通讯
- Android与PC通过USB通讯
- Android与PC通过USB通讯
- Android 通过USB通讯之FTDI
- android 与 linux 通过usb通讯方案
- android端和pc端使用usb进行socket通信,其中android是服务器端,pc是客户端。如何实现安卓端输入的数据通过按钮发送到pc端?
- android实时录制视频h263编码通过rtp打包udp发送到服务器
- Android作为服务器通过USB使用Socket协议向PC客户端发送文件
- PC通过USB连接Android通信(Socket)
- Android 通过Socket 和服务器通讯
- Android 通过Socket 和服务器通讯
- Android 通过Socket 和服务器通讯
- Android 通过Socket 和服务器通讯
- MySql查询当年1-12月数据
- maven +SpringBoot+restful+mySql
- 卢俊卿谈从失衡走向均衡的幸福城市
- C++学习笔记(三)
- 如何降低运放电路中的电源噪声
- Android端通过Usb建立Socket通讯(实时发送视频数据)
- 华为交换机con0,telnet,vlan,trunk,access配置案例
- js调试在控制台输出值
- This UDF provides automation support for Java applications
- 单独编译和使用webrtc音频增益模块(AGC)
- #OSG+VS#第十九周
- monkey的基本使用
- 纯CSS实现导航栏效果
- 转发Oracle 导出、导入某用户所有数据(包括表、视图、存储过程...)