Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Max_92
25 / 7 / 2
Регистрация: 26.04.2010
Сообщений: 205
#1

Вылетает сетевое приложение - Программирование Android

28.01.2014, 14:04. Просмотров 881. Ответов 3
Метки нет (Все метки)

Есть такой код:
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
//устанавливаем соединение
        URLConnection conn = null;
        try {
            if (p) conn = new URL(url + "?" + query).openConnection();
            else conn = new URL(url).openConnection();
            //str1 = url + "?" + query;
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Log.e(TAG, "Исключение MalformedURLException в методе getQuery");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Log.e(TAG, "Исключение IOException (1) в методе getQuery");
        }
        //заполним header request парамеры, можно и не заполнять
        //conn.setRequestProperty("Referer", "http://google.com/");
        //conn.setRequestProperty("Cookie", "a=1");
        //можно установить и другие парамеры, такие как User-Agent
        
    
        
        //читаем то, что отдал нам сервер
        String html = null;
        try {
            html = readStreamToString(conn.getInputStream(), "UTF-8");
        
            
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
            Log.e(TAG, "Исключение IOException (2) в методе getQuery");
        }
В эмуляторе с API livel 10 (2.3.3) всё работает без проблем, а на телефоне (4.1) вылетает на строчке html = readStreamToString(conn.getInputStream(), "UTF-8"); скорее всего в conn.getInputStream(). Разрешения INTERNET и WRITE_EXTENAL_STORAGE выставлены. В чём может быть проблема?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.01.2014, 14:04
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вылетает сетевое приложение (Программирование Android):

Вылетает приложение - Программирование Android
Вылетает при работе кода в кнопке sobr! package com.example.stracking; import android.app.Activity; import...

Вылетает приложение - Программирование Android
вылетает не знаю почему, помогите пожалуйста package com.example.stracking; import android.app.Activity; import...

Подписанное приложение вылетает - Программирование Android
Кто-нибудь сталкивался с таким? Есть рабочее приложение, тестится в эмуляторе и на нескольких реальных устройствах с разными разрешениями и...

Вылетает приложение от 4.4 и ниже - Программирование Android
Создал проект в Android Studio c Navigation Dravel Acticity выбрал 4.0.(4.4 пробовал) Ничего не добавлял запустил на эмуляторе скинул в...

Вылетает созданное приложение - Программирование Android
TextView t1; TextView fy; TextView fm; TextView fd; TextView sy; TextView sm; TextView sd;

Приложение вылетает с непонятной ошибкой - Программирование Android
package x.com.geoquiz; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import...

3
spydark91
85 / 85 / 2
Регистрация: 03.03.2011
Сообщений: 1,873
28.01.2014, 14:14 #2
логи в студию
0
Max_92
25 / 7 / 2
Регистрация: 26.04.2010
Сообщений: 205
28.01.2014, 14:40  [ТС] #3
spydark91, где их взять?

Добавлено через 23 минуты
spydark91,
01-28 14:39:36.361: E/AndroidRuntime(6266): FATAL EXCEPTION: main
01-28 14:39:36.361: E/AndroidRuntime(6266): android.os.NetworkOnMainThreadException
01-28 14:39:36.361: E/AndroidRuntime(6266): at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1117)
01-28 14:39:36.361: E/AndroidRuntime(6266): at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
01-28 14:39:36.361: E/AndroidRuntime(6266): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
01-28 14:39:36.361: E/AndroidRuntime(6266): at java.net.InetAddress.getAllByName(InetAddress.java:214)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:341)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:315)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpEngine.connect(HttpEngine.java:310)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:289)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:239)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:273)
01-28 14:39:36.361: E/AndroidRuntime(6266): at libcore.net.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:168)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.example.mercuryweb.QueryClass.getQuery(QueryClass.java:95)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.example.mercuryweb.MainActivity.UpdateNews(MainActivity.java:199)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.example.mercuryweb.MainActivity.onOptionsItemSelected(MainActivity.java:395)
01-28 14:39:36.361: E/AndroidRuntime(6266): at android.app.Activity.onMenuItemSelected(Activity.java:2534)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.android.internal.policy.impl.PhoneWindow.onMenuItemSelected(PhoneWindow.java:958)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:735)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:149)
01-28 14:39:36.361: E/AndroidRuntime(6266): at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:874)
0
ASDFD12
45 / 45 / 11
Регистрация: 15.09.2012
Сообщений: 474
28.01.2014, 16:20 #4
В новых версиях андроид все сетевые операции помещай в отдельный поток.
Java
1
2
3
4
5
6
7
 new Thread(new Runnable() {
        public void run() {
        // cетевые операции
                }
            });
        }
    }).start();
Добавлено через 14 минут
или с помощью AsinkTask
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 private class MyParser extends AsyncTask<String, Void, String> {
 
        @Override
        protected String doInBackground(String... links) {  
            Document doc = null;
            try {
                doc = Jsoup.connect(links[0]).get();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return doc.title();
        }
 
        @Override
        protected void onPostExecute(String result) {
            textView.setText(result);
        }
        
    }
0
28.01.2014, 16:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.01.2014, 16:20
Привет! Вот еще темы с ответами:

ListView в ListViev, приложение вылетает - Программирование Android
мне нужно поместить один ListView в строку другого, вот код: ListView list = (ListView)findViewById(R.id.listView1); ...

Парсер html, вылетает приложение - Программирование Android
Читал на хабре статью о парсинге stackoverflow http://habrahabr.ru/post/115127/. Создал проект, сделал все как было написано, но при...

Вылетает приложение во время запуска - Программирование Android
Пишу небольшую игру. Ничего не предвещало беды. Я запустил приложение, а оно мне: &quot;В приложении произошла ошибка&quot;. Совершенно не пойму,...

Вылетает приложение при запуске - Программирование Android
Здравствуйте. Столкнулся со следующей проблемой. В приложении при запуске подключаются сразу несколько фрагментов, в каждом из которых...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru