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

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

Войти
Регистрация
Восстановить пароль
 
alex-rudenkiy
5 / 5 / 0
Регистрация: 02.01.2013
Сообщений: 404
#1

Почему не пересоздаётся сокет? - Программирование Android

28.08.2016, 13:01. Просмотров 147. Ответов 5
Метки нет (Все метки)

Почему не пересоздаётся сокет при том что я его заранее полностью освобождаю, если он естественно создан?

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
if(socket!= null){
            socket.close();
            socket.shutdownInput();
            socket.shutdownOutput();
            socket=null;
 
        }
 
        socket = new Socket(ip, port);
 
        output = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())));
        input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
        Log.i("Клиент запущен","Ok");
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.08.2016, 13:01
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Почему не пересоздаётся сокет? (Программирование Android):

Неполадки с сокет-соединением - Программирование Android
Здравствуйте, господа! Есть сервер на VB, который должен принимать/отправлять сообщения Андроиду. Пока что могу только отправлять...

Исходники сервиса с сокет-клиентом - Программирование Android
Нужно написать подобное и не хочу писать все с нуля... Изобретать велосипед... Может подобное уже есть в опенсорсах? Нужно: 1)...

Почему сокет закрывается, сразу после получения ответа? - Node.js
Есть пример клиента на Node.js var net = require('net'); var client = new net.Socket(); client.connect(3333, 'localhost',...

Почему на одном проце видюха работает, а на другом нет? У обоих процов сокет lga 1155 - Процессоры
Доброго времени суток форумчане.у меня проблема следующего характера.решил заменить свой процессор i5 2310на i7 3770.после замены перестала...

4 планки Apacer DDR3 по 4Gb/1333MHz от старой МВ сокет 775 могу ли я их использовать на сокет 2011 - Оперативная память
недавно решил перейти с LGA775 на LGA2011. Финансы урезаны поэтому пока приобрёл только процессор Intel Core i7 - 3820 oem, 3.60GHz/ 10 MB/...

Как только происходит попытка создать сокет для UDP - сокет TCP сразу ломается (выдает 10093). - C++
Добрый день. Пытаюсь сделать соединение, использующее два канала обмена данными - TCP для управления в режиме клмиента, и UDP - для...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Pablito
2473 / 1918 / 595
Регистрация: 12.05.2014
Сообщений: 6,746
Завершенные тесты: 1
28.08.2016, 13:05 #2
Цитата Сообщение от alex-rudenkiy Посмотреть сообщение
не пересоздаётся сокет
откуда инфа?
alex-rudenkiy
5 / 5 / 0
Регистрация: 02.01.2013
Сообщений: 404
28.08.2016, 13:31  [ТС] #3
Цитата Сообщение от Паблито Посмотреть сообщение
откуда инфа?
В смысле? Если вы спрашиваете какая ошибка, то я не знаю, этот код лежит в сервисе и у меня почему-то оно вылетает тупо без исключений хоть даже там и лежит try{}catch.
Pablito
2473 / 1918 / 595
Регистрация: 12.05.2014
Сообщений: 6,746
Завершенные тесты: 1
28.08.2016, 13:41 #4
значит в блоке catch пусто
alex-rudenkiy
5 / 5 / 0
Регистрация: 02.01.2013
Сообщений: 404
28.08.2016, 14:26  [ТС] #5
неа, https://yadi.sk/i/Iab9ZaceuYLFy

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
        public void connect(String ip, int port){
            try {
                if(socket!= null){
                    socket.close();
                    socket.shutdownInput();
                    socket.shutdownOutput();
                    socket=null;
 
                }
                socket = new Socket(ip, port);
 
                output = new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())));
                input = new BufferedReader(new InputStreamReader(socket.getInputStream()));
                Log.i("Клиент запущен","Ok");
                connected = true;
            } catch (IOException e) {
                Log.e("Ошибка","Ошибка подключения к серверу!");
            }
            Log.e("Рп","Ошибка подключения к серверу!");
        }
Pablito
2473 / 1918 / 595
Регистрация: 12.05.2014
Сообщений: 6,746
Завершенные тесты: 1
28.08.2016, 14:38 #6
ролики пусть кто-то другой смотрит

надо просто запустить не в дебаге и скопировать логи которые выведет
и вместо Log.e("Ошибка","Ошибка подключения к серверу!");
лучше написать e.printStackTrace(); - на порядок нагляднее будет
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2016, 14:38
Привет! Вот еще темы с ответами:

Доработать сокет клиента и сокет сервера - C++
Есть клиент с адресом 192.168.73.2 и сервер (192.168.73.145). Необходимо с помощью низкоуровневого сокета SOCK _ RAW разработать генератор...

Сокет 775 к Сокет 754 - Охлаждение
Здравствуйте, дорогие форумчане! Извините за тупой вопрос, но можно ли кулер 775 сокета ставить на сокет 754 ? Просто кулер 754 не...

Не принимает сокет - C++
принимает значение -1 код сервера #include "winsock2.h" #include <string.h> #pragma comment (lib, "Ws2_32.lib") WSAData...

Сокет не конектится - C++
здраствуйте всем! делал соединение клиент- сервер. все работает только в локальной сети, а вот почему с офиса домой не могу отправить...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
28.08.2016, 14:38
Ответ Создать тему
Опции темы

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