Форум программистов, компьютерный форум CyberForum.ru

Не выполняется скачивание файла - программа работает? - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Загрузка текста и картинки в listView с AsyncTask http://www.cyberforum.ru/android-dev/thread1486655.html
Привет всем. Имеется файл в формате JSON на удалённом сервере. Мне нужно вывести текст из определённых узлов файла и картинки по указанным в файле ссылкам. {"success":1,"products":} Нашёл в интеренте примеры, только вот дела все примеры делают чтото одно, либо текст, либо картинку. Попытался както допилить. Но увы познаний не хватает. Вот код: public class MainActivity extends Activity { ...
Android Как загрузить видео при старте Activity? Всем привет. Возможно этот вопрос покажется для кого-то простым и не уместным, но так как я только начинаю заниматься Андройдом я никак не могу его решить. Проблема в следующем... как сделать так, чтобы при включении программы загружалось вот это видео ("http://195.62.145.172/elem/animal/playlist.m3u8") Заранее спасибо. package com.google.android.exoplayer.demo; import... http://www.cyberforum.ru/android-dev/thread1486631.html
Отправка сообщения в Skype из приложения Android
Как отправить в скайп сообщение из моего приложения??Что для этого нужно сделать?? Можете обьяснить вкратце или если это не сложно приложить небольшой фрагмент кода отправки сообщения в скайп??
Backend для мобильного приложения Android
Пишу приложение, требуется backend. Использовал parse.com, но скорость работы оставляет желать лучшего. Поэтому принял решение разработать свой сервер, до этого никогда этим не занимался. Определил технологии, которые нужно изучить. Скажите все ли я правильно понял и учет: 1. Буду использовать mvc spring framework, тут вроде все ясно 2. Сервер tomcat. А что потом? Какие мои действия, когда...
Android Приложения на C++, Delphi под Android http://www.cyberforum.ru/android-dev/thread1486445.html
Доброго всем дня. Прошу поделиться знаниями и опытом использования языков программирования отличных от Java. А вопрос в том, не возникает ли проблем совместимости при запуске приложений на устройствах с различной процессорной архитектурой? Ведь Java язык-интерпретатор и JVM реализует запуск на любом процессоре. А как обстоят дела с языками-компиляторами? Например приложение скомпилированное и...
Android Получить token от менеджера аккаунтов Кто может розживать код http://findevelop.blogspot.ru/2012/05/oauth2-android.html Как получить Token и записать его в БД. В примере используются какойто код с отсроченным выполением при попытке словить токен с главного класса строка в БД остается пустой подробнее

Показать сообщение отдельно
Mikalai
253 / 229 / 92
Регистрация: 11.01.2015
Сообщений: 648
25.06.2015, 00:58     Не выполняется скачивание файла - программа работает?
lifeforce, вот так работает:
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
 
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
 
public class MainActivity extends Activity {
 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Button load = new Button(this);
        load.setText("Load file");
        load.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                downloadFile("http://dl.dropbox.com/s/unplki0xa40ql3f/Amplifier.ampl?token_hash=AAFon7ENo62XGixcqLV_s6FZgs0Ir6FnRbafnNzJsEdBeQ&dl=1");
            }
        });
        setContentView(load, new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    }
 
 
    private void downloadFile(String url) {
        final Context context = this.getApplicationContext();
        final ProgressDialog progressDialog = new ProgressDialog(this);
 
        new AsyncTask<String, Integer, File>() {
            private Exception m_error = null;
 
            @Override
            protected void onPreExecute() {
                progressDialog.setMessage("Downloading ...");
                progressDialog.setCancelable(false);
                progressDialog.setMax(100);
                progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
                progressDialog.show();
            }
 
            @Override
            protected File doInBackground(String... params) {
 
                URL url;
                HttpURLConnection urlConnection;
                InputStream inputStream;
                int totalSize;
                int downloadedSize;
                byte[] buffer;
                int bufferLength;
 
                File file = null;
                FileOutputStream fos = null;
 
                try {
                    url = new URL(params[0]);
                    urlConnection = (HttpURLConnection) url.openConnection();
 
                    urlConnection.setRequestMethod("GET");
                    urlConnection.setDoOutput(true);
                    urlConnection.connect();
                    file = File.createTempFile("Amplifier", "ampl", context.getCacheDir());
                    fos = new FileOutputStream(file);
                    inputStream = urlConnection.getInputStream();
                    totalSize = urlConnection.getContentLength();
                    downloadedSize = 0;
                    buffer = new byte[1024];
                    bufferLength = 0;
                    // читаем со входа и пишем в выход,
                    // с каждой итерацией публикуем прогресс
                    while ((bufferLength = inputStream.read(buffer)) > 0) {
                        fos.write(buffer, 0, bufferLength);
                        downloadedSize += bufferLength;
                        publishProgress(downloadedSize, totalSize);
                    }
                    fos.close();
                    inputStream.close();
 
                    return file;
                } catch (MalformedURLException e) {
                    e.printStackTrace();
                    m_error = e;
                } catch (IOException e) {
                    e.printStackTrace();
                    m_error = e;
                }
 
                return null;
            }
 
            // обновляем progressDialog
            protected void onProgressUpdate(Integer... values) {
                progressDialog.setProgress((int) ((values[0] / (float) values[1]) * 100));
            };
 
            @Override
            protected void onPostExecute(File file) {
                // отображаем сообщение, если возникла ошибка
                if (m_error != null) {
                    m_error.printStackTrace();
                    return;
                }
                // закрываем прогресс и удаляем временный файл
                progressDialog.hide();
                file.delete();
            }
        }.execute(url);
    }
}
вот это в манифесте лишнее:

XML
1
2
3
4
5
<!-- Network State Permissions -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
 
    <!-- Access Location -->
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 
Текущее время: 22:42. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru