выполнение темы студии андроида - PullRequest
0 голосов
/ 22 мая 2018

У меня есть поток в цикле for для загрузки некоторых файлов с http-сервера, считывающих имена файлов в списке массивов.Мне нужно несколько раз запустить поток, чтобы получить все файлы, кажется, что некоторые потоки не достигают, но без правил вообще.Я хотел бы запустить потоки, чтобы увидеть, если каждая задача работает нормально и, если нужно, что-то сделать, если нет.вот мой код

for(String object:stringArrayList_dwlfromex){
                   try {
                       //String result = stringArrayList_dwlfromex.get(k);
                       String result = String.valueOf(object);
                       String[]row=result.split(";");
                       imei = row[4].toString();
                       dir = row[1].toString();
                       filename = row[2].toString();
                       compteur++;
                       //Toast.makeText(getApplicationContext(),dir+"&"+filename,Toast.LENGTH_SHORT).show();
                       Toast.makeText(getApplicationContext(),compteur+"  "+result,Toast.LENGTH_SHORT).show();

                       new Thread(new Runnable() {

                           public void run() {

                               DownloadFiles(imei,dir,filename);
                           }
                       }).start();
                   }catch (Exception e) {
                       e.printStackTrace();
                   }
               }

есть идеи?

1 Ответ

0 голосов
/ 22 мая 2018

Я никогда не вижу обходного пути, как вы.

Вам нужно будет сделать службу с AsyncTask .Вы не будете использовать для цикла.

Решение заключается в том, чтобы загрузить другой файл при его загрузке.Вы должны установить обратный вызов интерфейса при загрузке файла.и выполните следующую загрузку после этого.Также уничтожайте сервис, когда размер исполняемых файлов равен вашему списку.

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