Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115

Подключение к серверу

20.05.2015, 18:52. Показов 1188. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
я почему то не могу подключиться к серверу, сразу вылетает, не могу понять причины
вот код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
HttpClient client = new DefaultHttpClient();
        HttpGet request = new HttpGet("https://api.vk.com/method/users.get?user_id=205387401&v=5.32"); 
                                // replace with your url
 
        HttpResponse response;
        try {
            response = client.execute(request);
             
            Log.d("Response of GET request", response.toString());
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
а вот логи ошибок:
Кликните здесь для просмотра всего текста
05-20 21:43:34.176: E/AndroidRuntime(6409): FATAL EXCEPTION: main
05-20 21:43:34.176: E/AndroidRuntime(6409): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.jsonparser/com.example.jsonparser.MainActivity}: android.os.NetworkOnMainThreadException
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread.performLaunch Activity(ActivityThread.java:2184)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread.handleLaunchA ctivity(ActivityThread.java:2211)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread.access$600(Ac tivityThread.java:149)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread$H.handleMessa ge(ActivityThread.java:1300)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.os.Handler.dispatchMessage(Handl er.java:99)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.os.Looper.loop(Looper.java:153)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread.main(Activity Thread.java:5086)
05-20 21:43:34.176: E/AndroidRuntime(6409): at java.lang.reflect.Method.invokeNative(Na tive Method)
05-20 21:43:34.176: E/AndroidRuntime(6409): at java.lang.reflect.Method.invoke(Method.j ava:511)
05-20 21:43:34.176: E/AndroidRuntime(6409): at com.android.internal.os.ZygoteInit$Metho dAndArgsCaller.run(ZygoteInit.java:821)
05-20 21:43:34.176: E/AndroidRuntime(6409): at com.android.internal.os.ZygoteInit.main( ZygoteInit.java:584)
05-20 21:43:34.176: E/AndroidRuntime(6409): at dalvik.system.NativeStart.main(Native Method)
05-20 21:43:34.176: E/AndroidRuntime(6409): Caused by: android.os.NetworkOnMainThreadException
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.os.StrictMode$AndroidBlockGuardP olicy.onNetwork(StrictMode.java:1125)
05-20 21:43:34.176: E/AndroidRuntime(6409): at java.net.InetAddress.lookupHostByName(In etAddress.java:385)
05-20 21:43:34.176: E/AndroidRuntime(6409): at java.net.InetAddress.getAllByNameImpl(In etAddress.java:236)
05-20 21:43:34.176: E/AndroidRuntime(6409): at java.net.InetAddress.getAllByName(InetAd dress.java:214)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.conn.DefaultClientC onnectionOperator.openConnection(Default ClientConnectionOperator.java:137)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.conn.AbstractPoolEn try.open(AbstractPoolEntry.java:164)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.conn.AbstractPooled ConnAdapter.open(AbstractPooledConnAdapt er.java:119)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.client.DefaultReque stDirector.execute(DefaultRequestDirecto r.java:365)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:5 55)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:4 87)
05-20 21:43:34.176: E/AndroidRuntime(6409): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:4 65)
05-20 21:43:34.176: E/AndroidRuntime(6409): at com.example.jsonparser.MainActivity.make GetRequest(MainActivity.java:40)
05-20 21:43:34.176: E/AndroidRuntime(6409): at com.example.jsonparser.MainActivity.onCr eate(MainActivity.java:29)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.Activity.performCreate(Activ ity.java:5020)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.Instrumentation.callActivity OnCreate(Instrumentation.java:1080)
05-20 21:43:34.176: E/AndroidRuntime(6409): at android.app.ActivityThread.performLaunch Activity(ActivityThread.java:2148)
05-20 21:43:34.176: E/AndroidRuntime(6409): ... 11 more


подскажите плиз
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2015, 18:52
Ответы с готовыми решениями:

Подключение к серверу через сокеты
Здравствуйте, я написал простое приложение клиент-сервер.Все на c# через tcp/ip. Клиент запрашивает данные у сервера, сервер ищет их в...

Подключение к FTP серверу. не получается =(
Что я делаю не так? Использовал тестовый FTP сервер, чтобы подружить приложение с ФТП, логин и пароль видите, можете даже подключиться, все...

Удаленное подключение к серверу через http
Не как не могу найти информацию о том, как сделать что бы приложение обращалась к серверу по заданному http адресу и что бы все данные...

10
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
20.05.2015, 18:58
Возникает ошибка при попытке регистрации
1
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115
20.05.2015, 19:11  [ТС]
стоп, я чет не понял, мне надо с отдельного класса делать или как?
0
400 / 343 / 85
Регистрация: 17.10.2014
Сообщений: 1,015
20.05.2015, 20:18
Лучший ответ Сообщение было отмечено akyma40 как решение

Решение

Цитата Сообщение от akyma40 Посмотреть сообщение
стоп, я чет не понял, мне надо с отдельного класса делать или как?
тебе надо в отдельном потоке делать
1
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115
21.05.2015, 20:44  [ТС]
ну я понял, но как. я новичок в java и android, даже не представляю как это делать

Добавлено через 1 час 41 минуту
androbro, А все, я разобрался. но вот как инфу мне выводить теперь? там же finViewById() не работает...
0
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
21.05.2015, 22:44
Лучший ответ Сообщение было отмечено akyma40 как решение

Решение

akyma40, для вывода в компоненты информации используются события onPostExecute и onPreExecute AsyncTask'а.
1
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115
30.05.2015, 16:10  [ТС]
CoolMind, я через интерфейс Runnable это сделал, но вот как вывести данные на экран незнаю
0
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
31.05.2015, 00:24
akyma40, может быть, так:
http://stackoverflow.com/quest... d-runnable
http://stackoverflow.com/a/4370458/2914140
1
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115
31.05.2015, 08:16  [ТС]
CoolMind, я даже так пробовал
Кликните здесь для просмотра всего текста
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
@Override
        protected void onPreExecute() {
            super.onPreExecute();
            tvInfo.setText("Начало");
        }
 
        @Override
        protected String doInBackground(Void... params) {
            String name, famil;
            name = "";
            famil = "";
            String httpString = "https://api.vk.com/method/users.get?user_id=205387401&v=5.32";
 
            HttpPost httppost = new HttpPost(httpString);
            HttpClient httpclient = new DefaultHttpClient();
 
            HttpResponse response;
 
            String responseBody;
 
            try {
 
                response = httpclient.execute(httppost);
                responseBody = EntityUtils.toString(response.getEntity());
                try {
                    JSONObject jsonobject = new JSONObject(responseBody);
                    JSONArray jsonarray = jsonobject.getJSONArray("response");
                    jsonobject = jsonarray.getJSONObject(0);
                    name = jsonobject.getString("first_name");
                    famil = jsonobject.getString("last_name");
                } catch (JSONException e) {
                    e.printStackTrace();
                }
 
            } catch (ClientProtocolException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return name + " " + famil;
        }
 
        @Override
        protected void onPostExecute(String result) {
            super.onPostExecute(result);
            tvInfo.setText("Результат: " + result);
        }


а оно вылетает и такие ошибки
Кликните здесь для просмотра всего текста
05-31 11:07:06.946: E/AndroidRuntime(17523): FATAL EXCEPTION: AsyncTask #1
05-31 11:07:06.946: E/AndroidRuntime(17523): java.lang.RuntimeException: An error occured while executing doInBackground()
05-31 11:07:06.946: E/AndroidRuntime(17523): at android.os.AsyncTask$3.done(AsyncTask.ja va:299)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.FutureTask$Sync.inn erSetException(FutureTask.java:273)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.FutureTask.setExcep tion(FutureTask.java:124)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.FutureTask$Sync.inn erRun(FutureTask.java:307)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.FutureTask.run(Futu reTask.java:137)
05-31 11:07:06.946: E/AndroidRuntime(17523): at android.os.AsyncTask$SerialExecutor$1.ru n(AsyncTask.java:230)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.ThreadPoolExecutor. runWorker(ThreadPoolExecutor.java:1076)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.ThreadPoolExecutor$ Worker.run(ThreadPoolExecutor.java:569)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.lang.Thread.run(Thread.java:856)
05-31 11:07:06.946: E/AndroidRuntime(17523): Caused by: java.lang.SecurityException: Permission denied (missing INTERNET permission?)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.net.InetAddress.lookupHostByName(In etAddress.java:430)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.net.InetAddress.getAllByNameImpl(In etAddress.java:236)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.net.InetAddress.getAllByName(InetAd dress.java:214)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.conn.DefaultClientC onnectionOperator.openConnection(Default ClientConnectionOperator.java:137)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.conn.AbstractPoolEn try.open(AbstractPoolEntry.java:164)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.conn.AbstractPooled ConnAdapter.open(AbstractPooledConnAdapt er.java:119)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.client.DefaultReque stDirector.execute(DefaultRequestDirecto r.java:365)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:5 55)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:4 87)
05-31 11:07:06.946: E/AndroidRuntime(17523): at org.apache.http.impl.client.AbstractHttp Client.execute(AbstractHttpClient.java:4 65)
05-31 11:07:06.946: E/AndroidRuntime(17523): at com.example.asynctaskdemo.MainActivity$C atTask.doInBackground(MainActivity.java: 63)
05-31 11:07:06.946: E/AndroidRuntime(17523): at com.example.asynctaskdemo.MainActivity$C atTask.doInBackground(MainActivity.java: 1)
05-31 11:07:06.946: E/AndroidRuntime(17523): at android.os.AsyncTask$2.call(AsyncTask.ja va:287)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.util.concurrent.FutureTask$Sync.inn erRun(FutureTask.java:305)
05-31 11:07:06.946: E/AndroidRuntime(17523): ... 5 more
05-31 11:07:06.946: E/AndroidRuntime(17523): Caused by: libcore.io.GaiException: getaddrinfo failed: EAI_NODATA (No address associated with hostname)
05-31 11:07:06.946: E/AndroidRuntime(17523): at libcore.io.Posix.getaddrinfo(Native Method)
05-31 11:07:06.946: E/AndroidRuntime(17523): at libcore.io.ForwardingOs.getaddrinfo(Forw ardingOs.java:55)
05-31 11:07:06.946: E/AndroidRuntime(17523): at java.net.InetAddress.lookupHostByName(In etAddress.java:405)
05-31 11:07:06.946: E/AndroidRuntime(17523): ... 18 more
05-31 11:07:06.946: E/AndroidRuntime(17523): Caused by: libcore.io.ErrnoException: getaddrinfo failed: EACCES (Permission denied)
05-31 11:07:06.946: E/AndroidRuntime(17523): ... 21 more


Добавлено через 7 минут
аааа, блин, все нормально... просто права забыл запросить
0
426 / 406 / 68
Регистрация: 06.10.2012
Сообщений: 1,748
31.05.2015, 23:11
akyma40, согласен. Этот мутный Андроид вечно молчит, когда не хватает прав. Вспоминаешь о них, когда все остальные средства уже испытаны и не работают.
0
17 / 16 / 3
Регистрация: 20.05.2015
Сообщений: 115
01.06.2015, 12:51  [ТС]
CoolMind, не, тот код так и так не работает, а вот этот:
Кликните здесь для просмотра всего текста
Цитата Сообщение от akyma40 Посмотреть сообщение
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
@Override
* * * * protected void onPreExecute() {
* * * * * * super.onPreExecute();
* * * * * * tvInfo.setText("Начало");
* * * * }
@Override
* * * * protected String doInBackground(Void... params) {
* * * * * * String name, famil;
* * * * * * name = "";
* * * * * * famil = "";
* * * * * * String httpString = "https://api.vk.com/method/users.get?user_id=205387401&v=5.32";
HttpPost httppost = new HttpPost(httpString);
* * * * * * HttpClient httpclient = new DefaultHttpClient();
HttpResponse response;
String responseBody;
try {
response = httpclient.execute(httppost);
* * * * * * * * responseBody = EntityUtils.toString(response.getEntity());
* * * * * * * * try {
* * * * * * * * * * JSONObject jsonobject = new JSONObject(responseBody);
* * * * * * * * * * JSONArray jsonarray = jsonobject.getJSONArray("response");
* * * * * * * * * * jsonobject = jsonarray.getJSONObject(0);
* * * * * * * * * * name = jsonobject.getString("first_name");
* * * * * * * * * * famil = jsonobject.getString("last_name");
* * * * * * * * } catch (JSONException e) {
* * * * * * * * * * e.printStackTrace();
* * * * * * * * }
} catch (ClientProtocolException e) {
* * * * * * * * e.printStackTrace();
* * * * * * } catch (IOException e) {
* * * * * * * * e.printStackTrace();
* * * * * * }
* * * * * * return name + " " + famil;
* * * * }
@Override
* * * * protected void onPostExecute(String result) {
* * * * * * super.onPostExecute(result);
* * * * * * tvInfo.setText("Результат: " + result);
* * * * }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.06.2015, 12:51
Помогаю со студенческими работами здесь

Android Клиент-Сервер подключение к серверу в сети Wi-Fi
Доброго времени суток, уважаемые форумчане! Ничего не смог найти по данному вопросу или искал не так или не там, направьте в нужном...

Подключение к серверу через удалённое подключение к рабочему столу из интернета
Поставил Windows Server 2016 на машину. запустил. Создал пользователей. Разрешил подключение к рабочему столу пользователям и вообще....

Подключение к серверу
Я поставил у себя Windows Server 2008, и поставил на него MySQL, он я не могу подключится к этой базе, я даже не могу войти на сервер с...

Подключение к серверу
Собственно интересует такие моменты. Как реализовать подключение к серверу?т.е проверка логина и пароля (на сервере пароль шифрованый). ...

Подключение к серверу
Доброго времени суток. Как подключиться к личному кабинету платежной системы? Например, Qiwi. То есть: пользователь вводит в поля свои...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Подключение 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" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru