Ошибка подключение к FTP серверу через Android

Пытаюсь грузить файл на сервер с помощью FTP клиента. Каждый раз при подключении выдает ошибку

java.net.ConnectException: failed to connect to /мой ип (port 21) from /:: (port 45523): connect failed: ECONNREFUSED (Connection refused)



public void goforIt(String path){
        FTPClient con = null;

        try
        {
            con = new FTPClient();
            con.connect("ип");


            if (con.login("root", "2323211"))
            {
                con.enterLocalPassiveMode(); // important!
                con.setFileType(FTP.BINARY_FILE_TYPE);
                String data = path;

                FileInputStream in = new FileInputStream(new File(data));
                boolean result = con.storeFile("var/www/html/gpstracker/api/v1/users/images/" + "test.png", in);
                in.close();
                if (result) Log.v("upload result", "succeeded");
                con.logout();
                con.disconnect();
            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

Ответы (1 шт):

Автор решения: ivff

Как я прочитал на других ресурсах дело в том что FTPClient не подключается к серверу как SFTP, поэтому я использовал JSch добавить его можно следующим образом в build.grable

implementation group: 'com.jcraft', name: 'jsch', version: '0.1.54'

сам код

//path - путь к файлу на вашем девайсе
//pathname - имя файла

    public void uploadImage(String path, String pathname) {
            System.out.println(pathname);
            try {
                java.util.Properties config = new java.util.Properties();
                config.put("StrictHostKeyChecking", "no");

                JSch jsch = new JSch();
                Session session = jsch.getSession(username, ip);
                session.setPassword(password);
                session.setConfig(config);
                session.connect();

                ChannelSftp sftpChannel = (ChannelSftp) session.openChannel("sftp");
                sftpChannel.connect();

                sftpChannel.put(path, "/var/www/html/gpstracker/api/v1/users/images/");
                System.out.println("+");
            } catch (Exception e){
                e.printStackTrace();
            }
        }
→ Ссылка