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

SocketServer, Client. Получение ответа от сервера - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Создание Activity в другом Activity http://www.cyberforum.ru/android-dev/thread1711615.html
Нормально ли создавать экземпляр какого-либо Activity в текущем Activity? Дело в том, что код, нужный для работы с данными находится в другом Activity. Дублировать код нельзя, противоречит ООП. Да, можно, конечно, создать новый объект и работать с этим объектом, но вопрос не в этом. Вопрос в следующем: нормально ли создавать экземпляр какого-либо Activity в текущем Activity? Не противоречит это...
Программирование Android Вставить фрагмент после определённого эленета в RecyclerView Привет киберфорум, имеется ситуация: RecyclerView, для которого есть адаптер, подгружающий внутрь CardView с данными из бд(sqlite). Имеется реализованный обработчик через интерфейс, разумеется на уровне ViewHolder'а считываются клики, и вот теперь ситуация: по клику необходимо приатачить вьюшку относительно кликнутого элемента. Казалось бы, просто, обработчик имеет следующий вид: ... http://www.cyberforum.ru/android-dev/thread1711573.html
Программирование Android ArrayList contains object
Мое приложение добавляет избранные игры в список. Мне нужно выводить сообщения о том, что список содержит определенные приложения, как это я делаю ниже, но почему-то это сообщения никогда не выводятся. Метод getApps() возвращает ссылку на ArrayList. В чем проблема? Чего я не замечаю? Apps app = new Apps(apps.get(pos).name.toString(), apps.get(pos).path.toString(),...
Программирование Android Genymotion Unable to create Virtual Device
Всем хорошего дня! Пробую поставить Genymotion, для того чтобы эмулятор был шустрее. Зарегистрировался на сайте, скачал версию бесплатную, запустилось, но при попытке добавить новое виртуальное устройство возникает проблема. Пробовал разные варианты из списка, в итоге оно выкачивает 293МБ и выдает сообщение: Unable to create Virtual Device: Failed to import OVA Вроде как проблема...
Программирование Android Сервис для телефонной книги http://www.cyberforum.ru/android-dev/thread1711309.html
Доброго времени суток! Подскажите пожалуйста, как в Android можно поднять свой сервис для синхронизации туда контактов в телефонную книгу? Как какой-нибудь ВКонтакте или Telegram делает. Заранее благодарен.
Программирование Android Получить HTML код страницы Здравствуйте, подскажите. Реально ли стать промежуточным звеном в отображении контента в webView. Т.е при переходе по URL получить код страницы - отпарсить его а тогда отобразить ? подробнее

Показать сообщение отдельно
den_droid
6 / 7 / 1
Регистрация: 18.05.2015
Сообщений: 190

SocketServer, Client. Получение ответа от сервера - Программирование Android

14.04.2016, 18:35. Просмотров 226. Ответов 4
Метки (Все метки)

Уже устал, не пойму где ошибка...

Клиент:
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
    client = null;     
                            dataOutputStream = null;
                            dataInputStream = null;
                            
                        Runnable runnable = new Runnable() {
                            public void run() {
                                try {
                                        client = new Socket(ip, Integer.parseInt(port)); 
                                        client.setSoTimeout(20); 
                                        dataOutputStream = new DataOutputStream(client.getOutputStream()); 
                                        dataInputStream = new DataInputStream(client.getInputStream()); 
                                    dataOutputStream.writeUTF("["get-server-name", ""+pass+""]");
                                    dataOutputStream.flush();
                                    
                                    ddServerAnswer = dataInputStream.readUTF();
                                    edPassAdd.post(new Runnable() {
                                            @Override
                                            public void run()
                                            {
                                                edPassAdd.setText(ddServerAnswer);
                                            }
                                        });
                                    
                                } catch (UnknownHostException e) {
                                    //e.printStackTrace();
                                    Toast.makeText(getApplicationContext(), "Ошибка: Неизвестный адрес", Toast.LENGTH_LONG).show();
                                } catch (IOException e) {
                                    e.printStackTrace();
                                    Toast.makeText(getApplicationContext(), "Ошибка: IOException", Toast.LENGTH_LONG).show();
                                }
Сервер:
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
ServerSocket ss = new ServerSocket(1111); // создаем сокет сервера и привязываем его к вышеуказанному порту
                    
                    while(true) {
                        Socket socket = ss.accept(); // заставляем сервер ждать подключений и выводим сообщение когда кто-то связался с сервером
                        // Берем входной и выходной потоки сокета, теперь можем получать и отсылать данные клиенту. 
                        InputStream sin = socket.getInputStream();
                        final OutputStream sout = socket.getOutputStream();
                        // Конвертируем потоки в другой тип, чтоб легче обрабатывать текстовые сообщения.
                        DataInputStream in = new DataInputStream(sin);
                        final DataOutputStream out = new DataOutputStream(sout);
                        
                        line = in.readUTF(); // [ожидаем пока клиент пришлет строку текста.
                        out.writeUTF(line);
                        btn1.post(new Runnable() {
                                public void run() {
                                    btn1.setText(line);
                                }
                            });
                            if (!line.equals(null)) {
                                line = null;
                                socket.close();
                                sin.close();
                                in.close();
                                out.close();
                                socket.shutdownOutput();
                            }
                    }
                } 
                catch(Exception x) { x.printStackTrace(); }
Помогите пожалуйста!!! Как вывести полученные от сервера данные? Как корректно с ними работать?

Добавлено через 1 час 4 минуты
Что, никто не знает? ;(
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru