您好,我正在尝试从 android 连接到 vsftp 服务器,托管服务器的公司给了我用户名和密码以及@ip。
我做了一个例子来连接我并下载一个文件,但我登录有问题,连接建立但没有答案后,我使用虚拟 android 设备测试我的示例示例。问题在于方法 mftp.login 它返回 false 。
这是我连接到服务器的课程
private class connection extends AsyncTask{
@Override
protected Object doInBackground(Object... params) {
boolean retour = ftpConnect( "x.y.z.w", "username", "password", 21);
return retour;
}
public boolean ftpConnect(String host, String username,String password, int port){
try {
mFTPClient = new FTPClient();
try {
mFTPClient.connect(host, 21);
if (FTPReply.isPositiveCompletion(mFTPClient.getReplyCode())) {
/* Set File Transfer Mode
*
* To avoid corruption issue you must specified a correct
* transfer mode, such as ASCII_FILE_TYPE, BINARY_FILE_TYPE,
* EBCDIC_FILE_TYPE .etc. Here, I use BINARY_FILE_TYPE
* for transferring text, image, and compressed files.
*/
mFTPClient.setFileType(FTP.BINARY_FILE_TYPE);
mFTPClient.enterLocalPassiveMode();
boolean status = mFTPClient.login(username, password);
Log.i("cause", "this is the status of loging "+status);
FileOutputStream desFileStream = new FileOutputStream(Environment.getExternalStorageDirectory()+"/doc.pdf");
mFTPClient.retrieveFile("x.y.z.w/mydirectory/doc.pdf", desFileStream);
return status;
}
}catch (Exception e){
Log.e(username,"no idea");
}
} catch(Exception e) {
Log.e(username,"no idea 2 ");
}
return false;
}
我确定我的代码没有错误,我尝试从网页连接,但我不能,我尝试使用 dos 命令但没有响应,他们告诉我我只能从 android 设备连接.
我搜索了 vsftp,发现它是安全的。1* 我的问题是我可以从虚拟设备连接吗?2* 他们做了哪些配置不允许来自网页或虚拟设备的连接?
我已经尝试过使用 filezilla 但它给出了 530 登录错误
3* 您能告诉我是什么原因导致我无法登录服务器吗?问题来自我的程序或服务器。
4* 我使用 apache 库连接到服务器 ftp,这对 vsftp 来说太好了吗?
非常感谢你