我正在尝试编写一个将数据从一个Android设备传输到另一个设备的应用程序 - 但这些设备很可能位于城市,州或国家/地区的不同部分。 (直接的方式是拥有一个中央服务器(或任何类型的服务器),但我试图避免使用一个)。
我试图传递的数据是文字,图片或两者的组合。
我到目前为止找到的解决方案是与特殊格式的文本或图片消息进行通信;但这似乎远非最佳。有更好的解决方案吗?
答案 0 :(得分:2)
使用Amazon Simple Queue Service:
Amazon Simple Queue Service(亚马逊 SQS)提供可靠,高度 用于存储的可伸缩的托管队列 他们之间旅行的消息 电脑。通过使用Amazon SQS, 开发人员只需移动数据 之间的分布式组件 他们的应用程序执行 不同的任务,不会丢失 消息或要求每个组件 始终可用
答案 1 :(得分:1)
真正的P2P不可能超过3G。
在您的问题中,您提到您当前正在使用邮件。我认为你的意思是短信。
您可以做的是使用自定义mime类型的邮件和附件,例如application/foobar-data
。
在您的应用中,可以启动包含此附件的SEND意图。然后用户必须选择他的电子邮件程序(或者这可能是自动的),并将其发送给他/她喜欢的任何人。您还可以指定“收件人:”地址和意图中的主题。这将是相当简单的。
然后,远程用户将收到此邮件并点按附件。您的应用程序将被注册以处理application/foobar-data
mimetype,使用清单中的intent过滤器,然后自动启动和接收数据。之前生成的邮件正文也可以预先填写有关您的应用程序及其安装方式的信息,例如“您需要FooBar才能查看附件。您可以从...安装”。
因此,最终,您的应用可以发送自定义数据并接收它,而无需依赖专用服务器。
答案 2 :(得分:0)
看看ShazzleMail。您可以下载他们的应用程序并通过智能手机与p2p进行通信。寻址是通过中间人完成的,但所有内容都是p2p。