0

我正在开发一个应用程序(Android),其中应用程序的实例通过 FTP 服务器彼此共享数据。之所以使用 FTP,是因为我正在使用的路由器可以是使用插入 USB 闪存驱动器的 FTP 服务器。

该应用程序要执行的一项功能是将其数据与其他实例同步。目前,同步只是附加的。服务器上任何不在手机上的数据都会传输到手机上。电话上不在服务器上的任何数据都会传输到服务器。这个想法是所有手机上创建的所有数据都可以相互共享。

我看过一些 java rsync 库。但是,在我所见的那些中,它们要么未维护,要么记录不充分,要么两者兼而有之。此外,鉴于我目前正在使用的硬件,rsync 将无法正常工作。

我一直在使用 Apache Commons Net FTPClient。我创建了一个建立在它之上的类,它提供了从服务器推送和拉取数据的方法。但是,如果存在已经过彻底测试或提供更多功能的库(或方法),我想使用它。在那儿?

4

1 回答 1

0

您尝试做的事情超出了 FTP 协议的范围。这并非不可能,但为了做到这一点,您需要解析 LIST 命令的(特定于实现的)输出以提取时间戳和文件大小。Apache FTPClient 库可以做到这一点,尽管它的工作程度取决于目标 FTP 服务器返回的内容。

请注意,真正的“rsync”命令使用校验和来最小化传输。基于 FTP 的解决方案不能做到这一点。

有关的:

于 2013-08-24T09:32:53.197 回答