我正在尝试在我的项目中实现文件传输但是无法创建FileTransferManager对象,它说:
FileTransferManager中的FileTransferManager(org.jivesoftware.smack.Connection)无法应用于(org.jivesoftware.smack.tcp.XMPPTCPConnection)
这是我的代码:
FileTransferManager manager = new FileTransferManager(connection);
// Where connection is an object of XMPPTCPConnection
使用Smack 4.2.0和Openfire服务器
答案 0 :(得分:0)
问题可能是smack jar的版本。 使用最近的版本,例如3.2.1,它应该可以工作。
答案 1 :(得分:0)
如果我们在谈论类org.jivesoftware.smackx.filetransfer.FileTransferManager它没有公共构造函数,但它有一个静态工厂方法:
public static synchronized FileTransferManager getInstanceFor(XMPPConnection connection)
所以我会尝试以下方法:
FileTransferManager manager = FileTransferManager.getInstanceFor(connection);
您确定导入了正确的课程吗?因为你根本不应该调用它的构造函数。
答案 2 :(得分:0)
您可以使用 getDefaultFileTransferManager 来实现它:
public static FileTransferManager getDefaultFileTransferManager(FileTransferAuth fileTransferAuth)
throws ClientException,
ServiceException