无法连接到Gingerbread上的FTP

时间:2011-01-10 14:06:56

标签: android ftp

我最近注意到,当尝试在Gingerbread仿真上运行我的应用程序时,FTP崩溃了。我目前正在使用apache commons外部库来支持FTP,但出于某种原因,它适用于除2.3之外的所有其他Android操作系统(Gingerbread)

这是我的FTP代码

FTPClient ftp = new FTPClient();
ftp.connect(SERVER);
ftp.login("anonymous", "anonymous");
ftp.setFileType(FTP.BINARY_FILE_TYPE);
ftp.enterLocalPassiveMode();

InputStream is = ftp.retrieveFileStream("file.txt");
byte[] data = new byte[1024];

fos = openFileOutput(FILENAME, Context.MODE_PRIVATE);
int x = 0;
while((x=is.read(data,0,1024))>=0){
    fos.write(data,0,x);
}
fos.flush();
fos.close();
ftp.logout();
ftp.disconnect();

正如我所说,这是经过测试并适用于1.6,2.1和2.2,但不是2.3。我整天都在努力弄清楚为什么以及如何解决它,但我找不到任何解决方案。

因此我想知道是否有人有使用FTP和姜饼的经验,如果你真的很高兴能指导我朝正确的方向发展。

感谢。

2 个答案:

答案 0 :(得分:1)

我不知道导致问题的原因,但我发现Android 2.3上的FTP确实有效,但不能用于仿真。

当我在手机上试用我的代码时,它就像以前所有版本的Android一样。

感谢您的帮助!

答案 1 :(得分:0)

我要检查的第一件事是你是否拥有正确的权限,如果是这种情况,请检查Logcat是否存在任何异常。如果您有任何请在这里或通过pastebin发布。