Не удается подключиться к FTP на Gingerbread - PullRequest
6 голосов
/ 10 января 2011

Я недавно заметил, что при попытке запустить мое приложение с помощью эмуляции Gingerbread, этот FTP сломался. В настоящее время я использую внешнюю библиотеку apache commons для поддержки FTP, но по какой-то причине она работает на всех других ОС Android, кроме 2.3 (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 и Gingerbread, и, может быть, вам так приятно направлять меня в правильном направлении.

Спасибо.

Ответы [ 2 ]

1 голос
/ 24 сентября 2011

Я не знаю, в чем причина проблемы, но я обнаружил, что FTP на Android 2.3 работает, но не в эмуляции.

В тот момент, когда я попробовал свой код на своем мобильном телефоне, он работал, как и во всех предыдущих версиях Android.

Спасибо за помощь!

0 голосов
/ 04 июня 2011

Первое, что я хотел бы проверить, есть ли у вас правильные разрешения, если это так, проверьте Logcat на наличие каких-либо исключений. Если у вас есть какие-либо, пожалуйста, опубликуйте их здесь или через pastebin.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...