Android与PC通过USB连接通信(一)
原理
通过在Android设备与PC之间通过USB建立socket连接,以Android作为服务器,PC作为客户端,通过adb进行转发通信。
客户端代码及分析
package com.geo.main;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.InterruptedIOException;
import java.net.InetAddress;
import java.net.Socket;
import java.net.UnknownHostException;
import com.geo.util.FileHelper;
import com.geo.util.MyUtil;
/**
* usb与pc通信,通过adb端口转发方式
*/
public class testPcClient
{
public static void main(String[] args) throws InterruptedIOException
{
try
{
// adb 指令,在服务器开启后建立连接
Runtime.getRuntime().exec("adb shell am broadcast -a NotifyServiceStop");
Thread.sleep(3000);
Runtime.getRuntime().exec("adb forward tcp:12580 tcp:10086"); // 端口转换
Thread.sleep(3000);
Runtime.getRuntime().exec("adb shell am broadcast -a NotifyServiceStart");
Thread.sleep(3000)