Недавно я заметил, что при попытке запустить мое приложение на эмуляции Gingerbread, этот FTP сломался. Я в настоящее время использую внешнюю библиотеку Apache Commons для поддержки FTP, но по какой-то причине он работает на любой другой ОС Android, за исключением 2.3 (Gingerbread)Не удается подключиться к FTP на 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 и пряником, и если вы можете быть настолько красивыми, чтобы вести меня в правильном направлении.
Спасибо.
Прошла ли аутентификация? Исправлены ли какие-либо исключения? – Brian
Ваш код работает нормально для меня с Android 2.3.1 API уровня 9 эмулятора и commons-net-2.0.jar. Возможно, у вас более старая версия? Я использовал FTP-сайт www.mirrorservice.org и файл /pub/gnu/r.README – NickT
Что не удается? у вас есть стек? не удается построить или не работать? –