Не выводятся названия файлов с сервера в listview

175
30 июня 2017, 05:43

Всем доброго времени суток. Я пишу приложение, в котором нужно подключиться к FTP серверу. В listview должны выводиться названия файлов, лежащих на этом сервере. Проблема в том, что файлы с сервера не выводятся(хотя возможно даже не происходит подключения к серверу), при этом в логах не появляется никаких ошибок. Я только учусь и не могу разобраться, в чем я допустил ошибку. Посмотрите мой код, может вы поймете в чем проблема:

import android.content.Context;
import android.net.wifi.WifiManager;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ListView;
import android.widget.TextView;
import org.apache.commons.net.ftp.FTP;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import java.io.IOException;
import java.net.InetAddress;
import java.util.ArrayList;

public class ftpClient extends Fragment {
    FTPClient ftpClient;
    Button button;
    WifiManager wifiManager;
    EditText textIp,textPort,textPassword,textLogin;
    TextView printDir;
    ListView listFolder;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        final View rootView = inflater.inflate(R.layout.fragment_ftpclient, container, false);
        textIp =(EditText)rootView.findViewById(R.id.editText5);
        textPort =(EditText)rootView.findViewById(R.id.editText6);
        textPassword =(EditText)rootView.findViewById(R.id.editText7);
        textLogin =(EditText)rootView.findViewById(R.id.editText8);
        listFolder = (ListView) rootView.findViewById(R.id.listView);
        printDir = (TextView) rootView.findViewById(R.id.textView2);
        wifiManager = (WifiManager) getActivity().getApplicationContext().getSystemService(Context.WIFI_SERVICE);
        button=(Button) rootView.findViewById(R.id.button);
        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try{
                    programTask  prTask = new programTask(textIp.getText().toString(), Integer.parseInt(textPort.getText().toString()), textLogin.getText().toString(), textPassword.getText().toString());
                    prTask.execute();
                }catch(Exception e){
                    e.printStackTrace();
                }
            }
        });
        return rootView;
    }
    private class programTask extends AsyncTask<String, ArrayList<String>, Void> {
        ArrayAdapter<String> adapter;
        private String ip,login,pass;
        private int port;
        programTask(String ip, int port, String login,String pass){
            this.ip=ip;
            this.port=port;
            this.login=login;
            this.pass=pass;
        }
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
        }
        @Override
        protected Void doInBackground(String... urls) {
            try{
                ftpClient = new FTPClient();
                ftpClient.connect(InetAddress.getByName(ip),port);
                ftpClient.login(login, pass);
                ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
                ftpClient.enterLocalPassiveMode();
                ArrayList<String> listItems = new ArrayList<String>();
                FTPFile[] ftpFiles = ftpClient.listFiles();
                for (FTPFile file : ftpFiles) {
                    listItems.add(file.getName());
                }
                publishProgress(listItems);
            }catch (IOException e){
                e.printStackTrace();
            }
            return null;
        }
        @Override
        protected void onProgressUpdate(ArrayList<String>... listitem) {
            super.onProgressUpdate(listitem);
            adapter=new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, listitem[1]);
            listFolder.setAdapter(adapter);
        }
        @Override
        protected void onPostExecute(Void result) {
            super.onPostExecute(result);
        }
    }
}

Собственно подключение и вывод файлов у меня в AsyncTask

READ ALSO
Как сделать перетекание цвета в меню как на картинке?

Как сделать перетекание цвета в меню как на картинке?

Не могу понять как сделать выделенный элемент с перетеканием цвета из красного в черныйНужно ли использовать background-image или можно обойтись...

312
Оптимизация HTML, CSS

Оптимизация HTML, CSS

Вопрос по оптимизации HTML кодаИмеется подобная структура

233
Как поменять стили для элементов в таблицах DataTable в jQuery?

Как поменять стили для элементов в таблицах DataTable в jQuery?

Как в jquery в DataTable изменять стили и центрирование каких-либо элементов? Например, мне нужно уменьшить шрифт текста и размер окна выпадашки...

402
Адаптивные блоки фиксированной высоты

Адаптивные блоки фиксированной высоты

Мне нужно сверстать блоки в три колонки типа

379