Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345

ProgressDialog upload fpt server

02.06.2015, 20:30. Показов 802. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребята помогите разобраться


Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
private class uploadFileTask extends AsyncTask<Void, Integer, Long> {
 
        private ProgressDialog progressDialog;
        int progressInput = 0;
 
 
        @Override
        protected void onPreExecute() {
            super.onPreExecute();
            progressDialog = new ProgressDialog(MainActivity.this);
            progressDialog.setTitle("Upload file");
            progressDialog.setMessage("Sending file please wait...");
            progressDialog.setCancelable(false);
            progressDialog.setIndeterminate(false);
            progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
            progressDialog.setProgress(0);
            int byteCount = BitmapFactory.decodeFile(imgDecodableString).getByteCount();
            progressDialog.setMax(byteCount);
            progressDialog.incrementProgressBy(((progressInput * 100) / byteCount));
            progressDialog.show();
        }
 
        protected Long doInBackground(Void... FULL_PATH_TO_LOCAL_FILE ) {
                FTPClient ftpClient = new FTPClient();
                int reply;
                try {
                    System.out.println("Entered Data Upload loop!");
                    ftpClient.connect(SERVER,21);
                    ftpClient.login(USERNAME, PASSWORD);
                    int reply1 = ftpClient.getReplyCode();
                    if(FTPReply.isPositiveCompletion(reply1)){
                        System.out.println("Connected Success");
                    }else {
                        System.out.println("Connection Failed");
                        ftpClient.disconnect();
                    }
                    ftpClient.setFileType(org.apache.commons.net.ftp.FTP.BINARY_FILE_TYPE);
                    BufferedInputStream buffIn = null;
                    buffIn = new BufferedInputStream(new FileInputStream(imgDecodableString));
                    ftpClient.enterLocalPassiveMode();
                    System.out.println("Entered binary and passive modes");
                    boolean result = ftpClient.storeFile("sdasdasd", buffIn);
                 
 
 
                    ВОТ КАК ЗДЕСЬ ПЕРЕДАВАТЬ В onProgressUpdate сколько уже загрузилось????
                   
                    if (result){
                        System.out.println("Success");
                    }
                    //boolean result = ftpClient.storeFile("TEST.jpg", progressInput);
                    buffIn.close();
                    ftpClient.logout();
                    ftpClient.disconnect();
 
 
                } catch (SocketException e) {
                    Log.e("SocketException", e.getStackTrace().toString());
                    System.out.println("Socket Exception!");
                } catch (UnknownHostException e) {
                    Log.e("UnknownHostException", e.getStackTrace().toString());
                } catch (IOException e) {
                    Log.e("IOException", e.getStackTrace().toString());
                    System.out.println("IO Exception!");
                }
 
                return null;
            }
 
        @Override
        protected void onProgressUpdate(Integer... progress)   {
            super.onProgressUpdate(progress);
            progressDialog.setProgress(progress[0]);
        }
 
        @Override
        protected void onPostExecute(Long result) {
            progressDialog.dismiss();
        }
    }
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.06.2015, 20:30
Ответы с готовыми решениями:

Upload to server
Доброго всем вечера! Столкнулся с такой проблемой: делаю загрузку файла на сервер в сеовисе, но загвоздка в том что файлы больше 600кб не...

ProgressDialog
public class Main_Activity extends Activity { private ProgressDialog pd; private class LogIn extends AsyncTask&lt;Void,...

Не показывается ProgressDialog
Пробую показать диалог пока идёт такое if (item.getItemId() == android.R.id.home || item.getItemId() == 4) { dialog =...

13
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
02.06.2015, 20:35
вопрос задай
0
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345
02.06.2015, 20:49  [ТС]
КАК ЗДЕСЬ ПЕРЕДАВАТЬ В onProgressUpdate сколько уже загрузилось????
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
03.06.2015, 09:02
kirawa, ну вообще передавать с помощью этого метода
Java
1
publishProgress()
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
03.06.2015, 09:05
я подозреваю что он именно о том, как показать прогресс в цифрах
ответ - если ты не знаешь значения "от и до" то никак, используй круглый или любой другой "infinity" прогресс бар
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
03.06.2015, 09:13
Цитата Сообщение от Паблито Посмотреть сообщение
я подозреваю что он именно о том, как показать прогресс в цифрах
да так и есть
Цитата Сообщение от Паблито Посмотреть сообщение
значения "от и до"
эти цифры вроде как можно узнать без особых проблем
0
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345
03.06.2015, 09:15  [ТС]
Вот! От и до, как раз таки не проблема. А вот сам прогресс я не знаю как здесь отследить. В теории мне нужно в методе doInBackground передавать в цикле параметр загрузки в метод onProgressUpdate, но на практике я не знаю как такой цикл организовать и какой параметр передавать в метод((((((((((((
0
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
03.06.2015, 09:16
там ключевое слово "если", просто не стал писать код, ему полюбому надо что бы за него, а не сам
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
03.06.2015, 09:18
kirawa, тут описано как вешать listener
тока надо ftp4j либу в проект добавить
0
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345
03.06.2015, 16:16  [ТС]
Java
1
2
3
4
5
 public void transferred(int length) {
        // Yet other length bytes has been transferred since the last time this
        // method was called
        System.out.println(length);
    }
да тут как бы, если не ошибаюсь выводит общее количество байтов, что и так не проблема вычислить((((((((((((((((((((((((((((((( (
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
03.06.2015, 16:25
Цитата Сообщение от kirawa Посмотреть сообщение
да тут как бы, если не ошибаюсь выводит общее количество байтов, что и так не проблема вычислить((((((((((((((((((((((((((((((( (
ошибаетесь, количество переданных байт с момента последнего вызова этого метода.

ИМХО если Вы передаете 3Кб то конечно же смысла в данных действиях не будет))
0
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345
03.06.2015, 16:30  [ТС]
ааа, тобишь а где отследить сколько раз он вызывался ну или вызывается
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
03.06.2015, 16:33
kirawa, ну так а разве Ваш:
Java
1
 System.out.println(length);
не чего не выводит в нем?
1
35 / 35 / 2
Регистрация: 12.11.2013
Сообщений: 345
03.06.2015, 17:43  [ТС]
Cпасибо большое такое решение мне подходит, метод transferred кстати вызывается каждые 65536 байт. Магическое число типа или не много ни мало.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.06.2015, 17:43
Помогаю со студенческими работами здесь

Запрос http + ProgressDialog
подскажите пожалуйста как реализовать запрос к php серверу по протоколу http/https?, плюс, чтоб на время запроса и обработки ответа...

Не отображается ProgressDialog\ProgressBar
Добрый день! Есть у меня старая программа, где используется ProgressDialog (знаю, что устарел, но и с ProgressBar такая же у меня...

Async_Tasc появление ProgressDialog
При запуске Async Tasc в onPreExecute() создаётся и должен появится ProgressDialog. но он не появляется сразу. Вызываю AsyncTasc ...

Progressdialog при выполнении asynctask
Здравствуйте! Есть asynctask который отправляет запрос и после парсит страницу. Хотел добавить Progressdialog который начинал бы работать...

Ожидание подключения к серверу (ProgressDialog)
Здравствуйте! Мне нужно, чтобы при переходе на MainActivity вылазил ProgressDialog (он проверяет есть ли подключение к серверу), если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru