Android - 两台设备之间的通信

标签 android

安装在两台设备上的 Android 应用相互通信的最佳方式是什么?设备可以不使用短信直接连接吗?

最佳答案

您有多种选择,具体取决于您的要求和设置:

  • 如果您的设备彼此非常靠近(最多约 10 米),您可以按照 Derek 的建议使用蓝牙进行通信。
  • 如果您的设备距离较远,但在彼此的 WiFi 范围内(最远约 100 米),那么它们可以使用对等 WiFi API 相互通信,记录在 here (Android 无线 API 的一部分)。这不需要存在 WiFi 路由器,设备会相互发现并直接通信。不过,这需要 Android 4.1 或更高版本。
  • 如果您的设备在同一个本地网络上(即使用同一个 WiFi 路由器),Android Wireless API 也可以工作,即使它们本身不在彼此的范围内。
  • 如果这些选项都不可行/没有保证,那么我同意 Derek 的观点,即最简单的方法是使用 ServerSocket 和 Socket 通过 Internet 创建服务器/客户端接口(interface)。这是 sample application这样做。您可能遇到的主要问题是,如果服务器位于 NAT 后面(例如家庭互联网路由器),您必须配置 NAT 以将传入数据包转发到您的 Android 服务器。

关于Android - 两台设备之间的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9608832/

相关文章:

android - 如何在 cordova webview 中加载第三方非安全图像?

android - 拍摄的照片方向在 android 中发生变化

android - 自动化测试时如何改变屏幕方向?

java - 如何使用 SAX 解析器解析 XML

java - 在对象监视器上同步还是在我的情况下是更好的信号量?

android - 如何获取源和目的地的经纬度?

android - Android 中的多语言和不同平台支持

java - AffdexMe,Android,LicenseException : could not open license file

Java 反射 - 找不到 Android 类

javascript - 运行react native裸项目报错配置项目 ':react-native-reanimated'出现问题