Я также искал простой пример загрузки по ftp без использования сторонних библиотек.Не нашел ни одного, поэтому опубликуйте мое решение здесь.
URLConnection по умолчанию использует имя пользователя «анонимный» с пустым паролем, который не принимается многими ftp-серверами, так как им требуется электронная почта в качестве пароля для 'анонимным.
Чтобы использовать следующий код в своем приложении, просто добавьте try..catch и убедитесь, что чтение из потока не является блоком потока пользовательского интерфейса.
URL url = new URL("ftp://ftp.mozilla.org/README");
URLConnection cn = url.openConnection();
cn.setRequestProperty ("Authorization", "Basic " + Base64.encodeToString("anonymous:a@b.c".getBytes(), Base64.DEFAULT));
final File dir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS);
FileOutputStream fos = new FileOutputStream(dir.getPath() + "/README");
InputStream is = cn.getInputStream();
int bytesRead = -1;
byte[] buf = new byte[8096];
while ((bytesRead = is.read(buf)) != -1) {
fos.write(buf, 0, bytesRead);
}
if(is != null)is.close();
if(fos != null){ fos.flush(); fos.close(); }
Надеюсь, это сэкономит вам немноговремя.