我需要的是用于从移动设备(iOS,Android)到服务器(PHP)的文件传输的解决方案(库)。基本要求是文件应该拆分成块,这样如果数据连接在发送文件中间丢失,我就不需要重新发送整个文件了。低内存使用也是必须的。 我想过像p2p这样的方法。最佳做法?
感谢。
答案 0 :(得分:8)
我会推荐你的POST请求。看看here是否有用,内存使用率低,但你必须自己处理拆分文件(这应该非常简单,只需修改解决方案,通过块保存实际位置将数据发送到服务器)。
答案 1 :(得分:4)
我建议使用HTTP作为基础技术。
在Android上我会推荐loopj的异步http库(loopj),因为你可以在干净且易于使用的软件包中获得自动重试,cookie处理和一些其他不错的功能。您可能特别看一下“使用RequestParams上传文件”一章。
要拆分文件,请查看此snippet。在这种情况下,文件直接写入文件系统,使用另一个输出流将允许您轻松地将块存储在内存中或任何您喜欢的位置。如果内存使用非常令人担忧,您可以尝试读取块,直到缓冲区已满,然后直接将其发送到您的服务器,读取下一个块,发送它等等。
干杯
答案 2 :(得分:2)
目前工具上有一个缺口..如果你喜欢的话,一个开源的投放箱..我正在建立一个.. www.nofolder.com是我们是谁,它几乎处于测试阶段,将包括一个android应用..基本上没有任何好的工具来做这个..最接近的最好的事情是sparkleshare我知道他们有一个Android应用程序