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

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

Войти
Регистрация
Восстановить пароль
 
Wonkyhole
6 / 6 / 1
Регистрация: 25.03.2014
Сообщений: 52
#1

Падает на HttpClient::execute - Программирование Android

11.01.2015, 02:51. Просмотров 330. Ответов 0
Метки нет (Все метки)

Здравствуйте. Есть код:
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
    private boolean CheckAuth()
    {
        HttpContext localContext = new BasicHttpContext();
        localContext.setAttribute(ClientContext.COOKIE_STORE, this.cookieStore);
 
        HttpGet httpGet = new HttpGet("http://site/api/checkauth"); 
 
        try {
            HttpResponse response = client.execute(httpGet, localContext);
            String res = EntityUtils.toString(response.getEntity());
            
            try {
                JSONObject json = new JSONObject(res);
                String result = json.getString("result");
                if (result.equalsIgnoreCase("YES"))
                    return true;
                else
                    return false;
            } catch (JSONException e) {
                Log.e(TAG, "Exception", e);
                return false;
            }
        } catch (ClientProtocolException e) {
            Log.e(TAG, "Exception", e);
            return false;
        } catch (IOException e) {
            Log.e(TAG, "Exception", e);
            return false;
        }
    }
Но при запуске функции падает на client.execute с следующими ошибками:
Код
01-11 02:24:49.649: E/AndroidRuntime(28627): FATAL EXCEPTION: main
01-11 02:24:49.649: E/AndroidRuntime(28627): java.lang.RuntimeException: Unable to start service com.lan143.home.SmsService@41cdea68 with Intent { cmp=com.lan143.home/.SmsService (has extras) }: android.os.NetworkOnMainThreadException
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2655)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.app.ActivityThread.access$1900(ActivityThread.java:149)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1397)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.os.Handler.dispatchMessage(Handler.java:99)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.os.Looper.loop(Looper.java:153)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.app.ActivityThread.main(ActivityThread.java:5086)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at java.lang.reflect.Method.invokeNative(Native Method)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at java.lang.reflect.Method.invoke(Method.java:511)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at dalvik.system.NativeStart.main(Native Method)
01-11 02:24:49.649: E/AndroidRuntime(28627): Caused by: android.os.NetworkOnMainThreadException
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1125)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at java.net.InetAddress.lookupHostByName(InetAddress.java:385)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at java.net.InetAddress.getAllByNameImpl(InetAddress.java:236)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at java.net.InetAddress.getAllByName(InetAddress.java:214)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:365)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at com.lan143.home.SiteClient.CheckAuth(SiteClient.java:100)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at com.lan143.home.SiteClient.SendMessage(SiteClient.java:43)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at com.lan143.home.SmsService.onStartCommand(SmsService.java:26)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:2638)
01-11 02:24:49.649: E/AndroidRuntime(28627): 	... 10 more
Интернет на телефоне через WiFi, сам сайт открывается нормально что с телефона, что с компьютера. С чем это может быть связано?

Добавлено через 16 минут
Разобрался, как оказалось, сервис тоже за главный поток считается...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2015, 02:51     Падает на HttpClient::execute
Посмотрите здесь:

HttpClient.execute - Программирование Android
Привет всем, при работе этого кода почему то программа вылетает с ошибкой. public String getXmlFromUrl(String url) { String...

Не работает HttpClient - Программирование Android
Первый раз пробую отправить и получить данные на сервер... Полазил в нете и накопал такую функцию... но когда в эмуляторе запускаю и...

Какая есть альтернатива устаревшему apache HttpClient? - Программирование Android
С недавнего времени HttpClient от апача устарел и предлагают юзать стандартный HttpURLConnection. Я не против, но на пост/пут-запросы...

Could not execute method for android:onClick - Программирование Android
При клике на кнопку, возникает такая вот ошибка, точно на такие же кнопки жмакается в других фрагментах, все в порядке, может дело в...

Не компилится проект - Unable to execute dex - Программирование Android
Решил добавить библиотеку android4 в свой проект Build Patch - Cofigure. После этого проект перестал компилится и лезет ошибка: Unable...

Intellij Idea 13, ошибка при построении проекта : Unable to execute DX - Программирование Android
Здравствуйте. На чистую винду поставил, JDK 1.7 u45, Itellij Idea 13, Android SDK. В Idea прописал пути до JDK и SDK. Создаю пустой...

Падает приложение - Программирование Android
final Button changeB = (Button)findViewById(R.id.but_change); changeB.setOnClickListener(new...

Падает программа - Программирование Android
Здравствуйте. Нужно написать программу, которая последовательно отображает два экрана. На первом надпись "Добро пожаловать" и кнопка...

Падает программа Navigation Drawer - Программирование Android
Собрал пример этот бокового меню http://developer.android.com/intl/ru/training/implementing-navigation/nav-drawer.html на планшете...

Приложение падает на старых версиях OS - Программирование Android
Ещё раз привет. Ещё один крик души. * Не беспокойтесь, я не буду сливать каждую свою проблему сюда, это просто проблема №2 на эту...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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