android通过USB与win7进行通信

今天查了大把的资料,这东西还真搞死我了.在这里先声明,有些东西是网上的,这里也不是真正的操作USB,那个比较烦,这里用的是adb转发.好了言归正传.

首先你肯定要有adb的环境,千万不要用什么360的那个,那是人家专用的,自己写的,你可以用谷歌的,版本最好要新,像我今天就走了弯路,在模拟器上调试正确,在真机上死了.原因是模拟器是4.0,我手机是4.0.3的,所要adb要尽可能新.

我这里就不像360那样用广播事件了,直接就用SOCKET了,我这里用PC作为客户端,手机作为服务端,PC也用JAVA来写的,PC这边开头有那一句非常重要,

Runtime.getRuntime().exec("adb forward tcp:10086 tcp:10085");

然后你最好让线程sleep几秒,因为启动转发要几秒,这个是试过的,

Thread.sleep(5000);

之前试过3秒有失败的.

上面的代码执行后如果你能在任务管理器里发现adb启动了,那么你就可以用SOCKET连接127.0.0.1:10086,端口是在上面指定的,10086代表PC要连接的端,10085代表android要侦听的端口,这两个端你可以自己定.然后android这边就不用我教你了,建立个serversocket侦听就OK了,然后就可以通信了.

如果你用上面的方法失败了,请确保你的ADB能正常连接手机,具体方法是在CMD里adb shell,看能否进入手机.如果不可以自己到网上去找下解决方法.

这里附点代码:大神不要吐曹了.


这里的SOCKET有封装过的,大家自己改

PC:

public static void main(String[] args) {
try {
Runtime.getRuntime().exec("adb forward tcp:10086 tcp:10085");
Thread.sleep(5000);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}  

ClientSocket cs =null;
while(true)
{
try {
System.out.println("正在连接127.0.0.1:10086!");
cs = new ClientSocket("127.0.0.1", 10086);
System.out.println("连接成功!");
break;
} catch (Exception e) {
System.out.println("连接失败!");
e.printStackTrace();
}

try {
Thread.sleep(3000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}

try {
cs.getDataOutputStream().write("hello".getBytes());
cs.flush();
byte b[] = new byte[200];
int nRecv;
nRecv = cs.getSocket().getInputStream().read(b);
String text = new String(b,0,nRecv);
System.out.println(text);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}


android端:

public void run() {
try {
ServerSocket srv = new ServerSocket(10085);
Log.v("success", "侦听成功!");
t = "侦听成功!\n";
msg = new Message();
msg.obj = t;
mhandler.sendMessage(msg);
s = srv.accept();
Log.v("success", "客户连接!");
t = "客户连接!\n";
msg = new Message();
msg.obj = t;
mhandler.sendMessage(msg);
} catch (IOException e) {
e.printStackTrace();
}

byte b[] = new byte[200];
int nRecv = 0;
try {
nRecv = s.getInputStream().read(b);
String text = new String(b,0,nRecv);
Log.v("success", text);
t = text;
msg = new Message();
msg.obj = t;
mhandler.sendMessage(msg);
s.getOutputStream().write("yes,i am here!".getBytes());
s.getOutputStream().flush();
nRecv = s.getInputStream().read(b);
} catch (IOException e) {

e.printStackTrace();
}


super.run();
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: android_winusb.inf是一个Windows驱动文件,用于安装Android设备与计算机之间的USB连接。64位指的是适用于64位操作系统的版本。 该驱动文件是Google提供的,用于安装Android设备的USB驱动程序。安装这个驱动可以让计算机正确识别和连接Android设备。 在64位操作系统上安装android_winusb.inf有以下几个步骤: 1. 确保你的Android设备已连接到计算机并处于开发者模式下。 2. 下载android_winusb.inf文件。你可以在Google的官方网站上找到最新的版本。 3. 打开设备管理器。你可以在控制面板的设备和打印机中找到它。 4. 在设备管理器中找到你的Android设备。它通常会显示为"Android设备"或"ADB接口"。 5. 右键点击Android设备,并选择"更新驱动程序软件"。 6. 选择"浏览计算机以查找驱动程序软件"。 7. 在接下来的窗口中,选择"让我自己选择设备驱动程序"。 8. 点击"浏览"按钮,然后选择下载的android_winusb.inf文件。 9. 确认选择,然后点击"下一步"。 10. 完成安装,等待驱动程序成功安装并显示为"Android WinUsb"或类似名称。 完成以上步骤后,你的计算机将能够正常连接和识别你的Android设备。这对于开发者在开发和测试Android应用程序时非常重要。 ### 回答2: android_winusb.inf 64位是一个针对64位Windows操作系统的Android USB驱动程序文件。这个驱动程序文件用于连接Android设备与Windows计算机之间的USB通信。在安装此驱动程序后,用户可以在计算机上通过USB线将Android设备连接到计算机上,并进行数据传输、文件共享、调试和其他操作。 android_winusb.inf是一个在Windows操作系统中用于识别和配置Android设备的驱动程序信息文件。当用户将Android设备连接到64位Windows计算机时,操作系统会自动搜索并加载这个驱动程序,以确保设备与计算机之间的完美通信。 64位表示这个驱动程序适用于64位的Windows操作系统,与32位的Windows操作系统不兼容。在安装这个驱动程序时,用户需要确保自己的计算机是运行64位的Windows操作系统。如果用户是在安装Android开发环境或者进行Android设备的调试和开发操作,那么安装这个驱动程序对于确保设备与计算机之间的正常通信是非常重要的。 综上所述,android_winusb.inf 64位是一个用于64位Windows操作系统的Android USB驱动程序文件,它使Android设备能够通过USB与计算机之间进行数据传输、文件共享、调试和其他操作。用户在安装和使用这个驱动程序时需要确保自己的计算机是运行64位的Windows操作系统。 ### 回答3: android_winusb.inf 是一个用于 Windows 操作系统上的 Android USB 驱动程序文件。这个文件可以用于将 Android 设备连接到电脑上,并实现文件传输、ADB 调试等功能。 android_winusb.inf 的 64 位版本专门用于 64 位的 Windows 操作系统。64 位的操作系统可以更有效地管理内存和处理大量数据,相对于 32 位操作系统来说具有更高的性能和兼容性。 要在 64 位的 Windows 操作系统上安装 android_winusb.inf 驱动程序,首先需要确认自己的 Windows 版本是否为 64 位,可以通过右键点击“计算机”或“我的电脑”,选择“属性”查看系统类型。然后可以按照以下步骤进行安装: 1. 下载适用于 64 位 Windows 版本的 android_winusb.inf 文件; 2. 连接 Android 设备至电脑,并确保 USB 调试模式已启用; 3. 打开设备管理器,可以通过用键盘输入“Windows键 + X”,然后选择“设备管理器”进行访问; 4. 在设备管理器中找到 Android 设备,通常会显示为“Android Composite ADB Interface”或类似名称; 5. 右键点击设备,选择“更新驱动程序软件”; 6. 在更新驱动程序对话框中选择“浏览计算机以查找驱动程序软件”; 7. 选择下载的 android_winusb.inf 文件所在的文件夹,并点击“下一步”; 8. 等待驱动程序安装完成。 安装完成后,您应该能够在 Windows 上正常连接和操作您的 Android 设备了。 总之,android_winusb.inf 64 位是一个用于 Windows 64 位操作系统上的 Android USB 驱动程序文件,用于确保 Android 设备能在 Windows 中正常连接和交互。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值