如何在Android平台上利用网络进行P2P文件共享?

7

我正在为Android平台开发一些应用程序,有两个问题让我不太确定如何解决,而且这两个问题密切相关。

  1. 如何从一个Android设备向另一个设备发送一个相对较小的数据文件(最好是通过互联网或直接通过无线网络)?

  2. 是否可以从一个Android设备创建一个临时P2P实时数据流到另一个设备?一个示例应用程序是从A手机的摄像头流式传输低分辨率视频到B手机或音频。

我非常感谢在任何一个问题上指点方向(文件传输或实时数据传输)。

5个回答

2
您可以尝试在Android上使用Google的库libjingle。它提供了相当先进的NAT穿透功能,应该能够通过运营商的防火墙。

0

手机之间无法使用套接字进行通信。我已经尝试使用套接字通信在两部实际手机之间进行通信,但运营商的防火墙似乎会阻止除端口80以外的端口进行通信。如果您尝试使用端口80,则会出现“权限被拒绝”的异常。


0

要使用 WiFi 在设备之间发送数据,您可以尝试在这些设备之间建立一个 Ad-hoc 网络来进行通信。我认为您可以使用 Android 的 WiFi API 来实现这一点。一旦您设立了 Ad-hoc 网络,您就可以在设备之间建立简单的 TCP 连接并传输文件。


0

一种可能性是调查 JXTA框架。实用JXTA II书籍可在线阅读Scribd。


0

一种方法是使用java.net中的socket类。


1
这种方法行不通,因为它无法解决NAT穿透问题。 - Jérôme Verstrynge

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接