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

Загрузка файла из сети, и его выполнение - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Борьба с фоновой музыкой http://www.cyberforum.ru/android-dev/thread931064.html
Моя задача - добавить в игру фоновую музыку. Пробовала http://www.cyberforum.ru/android-dev/thread868122.html так и http://stackoverflow.com/questions/16336960/android-playing-music-in-background так (то, что в ответах). В первом случае - не играет. Во втором долго пробовала, но: 1)либо лажа с наложением музыки 2)либо не перестаёт играть при выходе из игры 3)либо приложение выкидывает при...
Программирование Android Проигрывание музыки по очереди Есть список треков, как проиграть их поочереди. Использую MediaPlayer и MediaPlayer.OnCompletionListener, но он выполняется когда заканчивается первый трек и все... А как грузить следующие? OnClickListener oclbt_Continue_Ini = new OnClickListener() { @Override public void onClick(View v) { step = 1; fileName = getFileNameSound(step); Play(); http://www.cyberforum.ru/android-dev/thread931052.html
Программное добавление View Программирование Android
Доброго времени. Знаю что на эту тему много инфы, как на форуме так и на других ресурсах, но решения своей проблемы все же не нашел. суть вот в чем. есть активити в которую я могу добавлять View в её layout, для этого получаю сам layout: RelativeLayout layout = (RelativeLayout)findViewById(R.id.main); и добавляю свой (раннее созданный) View: layout.addView(testBar,layoutParams); здесь все...
Как обновить значение в ячейке, используя условие? Программирование Android
как будет выглядеть условие в андроид на SqLite используя примерный синтаксис: db.update("myDB", newValues, id + "= ?", new String { value }); мне нужно обновить ячейку в столбце "С" где у столбца "А" значение ячейки =(равно) 55 и где у столбца "B" значение ячейки =(равно) 99
Программирование Android Отладка на устройсве http://www.cyberforum.ru/android-dev/thread931021.html
У меня LoagCat непоказывает логи при отладке на устройсве, в девайсе "Отладка USB" стоит, приложение из ADT на смартфон компилируется и запускается, а вот логи не показывает.... В чем проблема? p.s. у меня samsung i9300 Добавлено через 16 минут В DDMS на проге, жму Debug the selected process, и нифга, как и прежде..... уже и дрова переустановил, и толку ноль..
Программирование Android Grow heap (frag case) to 54 MB В программе для отображения информации использую 5 ImageView с Level-List. Все 5 xml файлов такого вида, различаются только ресурсы картинок <?xml version="1.0" encoding="utf-8"?> <level-list xmlns:android="http://schemas.android.com/apk/res/android" > <item android:maxLevel="1" android:drawable="@drawable/wave11"/> <item android:maxLevel="2" android:drawable="@drawable/wave12"/> <item... подробнее

Показать сообщение отдельно
Sanu0074
58 / 58 / 2
Регистрация: 14.06.2010
Сообщений: 1,189
Записей в блоге: 5

Загрузка файла из сети, и его выполнение - Программирование Android

30.07.2013, 21:17. Просмотров 3730. Ответов 11
Метки (Все метки)

Здравсвуйте, пытаюсь загрузить файл из сети (это файл приложения *.apk), и после загрузки сразу его запустить.
Вот то что накодил, тут есть ошибка в onPostExecute(), в setData()...
До этого пробовал передать file в интент, но нифига не вышло, ошибка вылетала...
Посмотрите, что тут надо подправить?
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
    private void downloadFile(String url) {
          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("Mustachify", "download");
             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();
 
 
            File sdDir = new File(Environment.getExternalStorageDirectory().getPath());
            File testDir = new File(sdDir.getAbsolutePath() + "/myDIR");
            testDir.mkdir();
            try {
                File.createTempFile("proga", "apk", testDir);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            
            Intent promptInstall = new Intent(Intent.ACTION_VIEW)
            .setData(File)
            .setType("application/vnd.android.package-archive");
            startActivity(promptInstall);
            
           }
          }.execute(url);
         }
Добавлено через 40 минут
Я хочу после
Java
1
 progressDialog.hide();
запустить файл....
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru