`
liugang594
  • 浏览: 985909 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android 与 PC 之间的通信

阅读更多

当PC与手机连通时,我们可以通过Socket连接来实现PC与手机间的通信。

 

这里我们先讨论手机做为Server端、PC做为Client端的情况。

 

和其他Java Socket程序一样,只需要定义一个SocketServer即可实现Server端的监听,如下:

 

ServerSocket serverSocket = new ServerSocket(SOCKET_PORT);

 

写Java Socket的时候,我们都知道,要连上这个Server,只需要知道Server的IP地址和Port号就可以了。这里因为手机是和PC相连的,因此麻烦就在于怎么定位这个IP地址和Port号。

 

IP地址其实也就是本机地址,而port号则需要有一点点技巧,需要用到adb工具。查看adb帮助中,有一条forward命令可以用于完全任务:

  adb forward <local> <remote> - forward socket connections
                                 forward specs are one of:
                                   tcp:<port>
                                   localabstract:<unix domain socket name>
                                   localreserved:<unix domain socket name>
                                   localfilesystem:<unix domain socket name>
                                   dev:<character device name>
                                   jdwp:<process pid> (remote only)

 使用如下:

 

adb forward tcp:Local_Port tcp:Remote_Port

 

也即将本地的Local_Port端口,映射为Remote_Port端口,这里的Remote_Port即为上面的SOCKET_PORT。

 

所以Client代码可以如下实现:

		String adb_path=....;

		Runtime.getRuntime().exec(adb_path + " forward tcp:LocalPort tcp:Remote_Port");

		Socket socket = new Socket("localhost", Local_Port);

即可实现PC与Android之间的通信。这里注意Android端需要有网络访问的权限:

	<uses-permission android:name="android.permission.INTERNET" />

 

分享到:
评论
1 楼 lenomon 2012-03-14  

相关推荐

    Android与PC使用蓝牙通信

    这两个文件可以作为起点,帮助开发者理解如何在实际应用中实现Android与PC之间的蓝牙通信。 总的来说,Android与PC通过蓝牙通信涉及到的知识点包括: 1. Android Bluetooth API的使用,如BluetoothAdapter、...

    android+pc socket通信

    "Android+PC Socket通信"指的是通过TCP Socket协议实现Android设备(手机客户端)与个人计算机之间的数据传输。Socket通信允许应用程序之间建立端到端的连接,进行双向数据交换,非常适合用于实时通讯、文件传输等...

    android与PC通信

    在IT行业中,Android和PC之间的通信是一个常见的需求,特别是在设备集成、数据同步或者远程控制等场景下。本篇将详细探讨如何实现Android设备与个人计算机(PC)通过UDP(User Datagram Protocol,用户数据报协议)...

    android app与pc通信,USB连接socket通信,

    在IT行业中,Android App与PC通信是一个常见的需求,特别是在特定环境下如无WiFi网络或需要高度安全性的场景。本文将深入探讨如何通过USB连接实现Android应用与个人计算机(PC)之间的Socket通信。 首先,理解...

    android与Pc实时通信

    在IT行业中,实时通信(Real-Time Communication,RTC)是一个关键领域,特别是在移动设备如Android与个人计算机(PC)之间。这种通信技术允许设备之间快速、高效地交换数据,无论是文本消息、语音通话还是视频会议...

    Android通过USB与PC端双向通信【支持字符、文件】

    在Android开发中,有时我们需要实现设备与PC之间的通信,例如进行数据传输或者调试。本教程将探讨如何在Android设备上通过USB接口与PC进行双向通信,支持字符和文件的交互。这种通信方式常用于设备控制、数据同步...

    android手机通过usb线与PC连接通信代码

    在Android开发中,将手机与PC通过USB进行通信是一种常见的需求,这主要涉及到Android的USB主机模式(Host Mode)和设备模式(Device Mode)。本文将详细介绍如何实现Android手机通过USB线与PC进行通信的代码实践。 ...

    android 与 PC socket 通信示例测试过

    在Android与PC之间使用Socket通信时,Android设备作为客户端(Client),而PC则作为服务器(Server)。 **Android客户端实现:** 1. **创建Socket对象**:Android客户端首先需要创建一个Socket对象,指定服务器的IP...

    Android与PC端通信简单Demo

    在Android与PC通信过程中,数据通常需要进行序列化(转化为网络传输的格式,如JSON或XML)和反序列化(将网络接收的数据转化为应用程序可使用的对象)。这个Demo可能使用了Gson或Jackson等库来处理序列化和反序列化...

    PC 通过USB 与android APP 通信

    其次,Android APP与PC通信通常使用Android Debug Bridge (ADB),这是一个强大的命令行工具,用于调试和管理Android设备。开发者可以使用ADB通过USB连接将APP安装到设备上,查看设备日志,甚至运行远程shell命令。...

    android x86模拟器和PC相互通信(socket)

    为了使Android模拟器能够与PC通信,需要在PC上编写一个Java服务端程序,监听特定的TCP端口,以便接收和发送数据。例如,可以创建一个名为`ServerThread`的线程类,它继承自`Thread`,并指定一个端口(如5554)来监听...

    Android与PC通信

    发现网上的很多例子都不能正常运行,本人经过2天的努力,终于让Android与PC Web能通信了。服务端用Cxf建立WebService,android客户端用ksoap2-android与服务端的webservice取得通信。本项目所有的jar包都已经打包,...

    Android Socket编程实例(与PC通信,不同手机中间通信)

    在Android开发中,Socket编程是实现设备间网络通信的关键技术,尤其在构建移动应用与桌面应用(如PC)交互的场景下。本实例主要讲解如何使用Android Socket进行客户端与服务器端以及不同Android设备间的通信。 首先...

    串口通信,Android端与电脑端串口通信Demo

    Android系统作为移动设备操作系统,有时也需要与外部设备,如电脑或其他硬件模块,进行串口通信,实现数据交换。本篇将围绕"Android端与电脑端串口通信Demo"进行详细介绍。 首先,我们要了解串口通信的基本原理。...

    PC客户端与Android服务端的Socket同步通信.docx

    通过以上步骤和技术要点的介绍,我们不仅了解了如何在PC客户端与Android服务端之间建立Socket同步通信,还掌握了如何利用ADB工具、端口转发以及Broadcast机制等关键技术来实现这一目标。这种通信方式在许多应用场景...

    android adb实现pC与终端通信

    通过以上步骤,我们就可以实现基于adb的PC与Android设备之间的通信。这种方式对于远程调试、日志收集、自动化测试等场景非常有用。然而,需要注意的是,由于adb通信依赖于设备的USB连接或Wi-Fi连接,因此在无线连接...

    android模拟机与PC通信实例

    总的来说,这是一个简单的Android模拟器与PC之间的TCP通信实例。客户端发送数据到服务器,服务器接收并处理数据,然后将响应发送回客户端。这个过程展示了Android应用如何利用Socket进行网络通信,以及如何处理网络...

    Android应用源码安卓与PC的Socket通信项目C#版+Java版_串口通讯.zip

    在本项目中,我们主要探讨的是如何通过Socket通信实现Android设备与个人计算机(PC)之间的数据交换。Socket通信是一种基于TCP/IP协议栈的网络通信方式,它允许不同网络中的应用程序之间进行双向通信。在这个Android...

    服务器——基于CS模式的android手机与PC机通信系统的开发

    在IT行业中,服务器与移动设备之间的通信是现代应用的核心部分,尤其在Android手机与个人计算机(PC)之间建立通信系统时。本项目标题为“服务器——基于CS模式的android手机与PC机通信系统的开发”,其核心是客户端...

Global site tag (gtag.js) - Google Analytics