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

Android клиент-серверное приложение. Не могу получить данные с сервера - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android ActionBar убивает приложение http://www.cyberforum.ru/android-dev/thread1068703.html
import android.app.ActionBar; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.text.Html; import android.view.View; import android.widget.ArrayAdapter; import android.widget.Button; import android.widget.TextView;
Android Аналог Делфийского property в Java Есть ли подобное? Пытаюсь написать класс и защитить его от случайного внешнего хулигантва. Защищаю некоторые свойста на только-чтение (read_only). В делфи было так: private f_opened: boolean; public property opened: boolean read f_opened; // можно только читать http://www.cyberforum.ru/android-dev/thread1068111.html
Android Шаринг фейсбук (facebook-android-sdk-3.6.)
Добрый день. Кто уже работал с facebook-android-sdk-3.6. Прошу подкиньте, какой нибудь рабочий, понятный туториал (кроме официального!, что то с ним у меня не срастается). Буду не против хорошего совета, или хотя бы какой нибудь, подсказки. Проблема, именно в том, что у меня никак не получается сделать рабочую интеграцию с фейсбук (именно используя новые методы, со старыми у меня...
Использование Google Maps API V2 Android
Добрый день. Сейчас делаю один проект под Android, а так как в этом я почти полный новичок возник вопрос. Есть приложение которое использует Google Maps API V2, можно ли каким либо образом сделать так, что бы отображалась только карта, без каких либо доп.данных(памятники, парки, etc.) Спасибо за помощь.
Android Запретить листание за пределы списка http://www.cyberforum.ru/android-dev/thread1067661.html
Можо ли? Хочу как в Win! Что-бы было нельзя схватить список и тянуть пока тянется, показывая фон под списком (фишка всех списков андроида). Убрать "пружинку" возврата списка. Недавно СЛУЧАЙНО добился возможности фиксировать список в затянутом режиме (благодаря коду из http://www.cyberforum.ru/android-dev/thread1066423.html). Список можно стянуть сильно вниз (первая запись в середине списка и...
Android Вместо открытия страницы в WebView предлагает открытие в браузере Добрый день. У меня есть Webview-открываю страничку в страничке есть форма которая передает значения обработчику, при клике на кнопку должна открыться страничка2 тамже (в Webview) но почему то предлагает открыть ее в браузере. Как это можно исправить? Спасибо. подробнее

Показать сообщение отдельно
angryrobot
Командир зеленых роботов
346 / 283 / 53
Регистрация: 08.10.2013
Сообщений: 564
12.01.2014, 12:29     Android клиент-серверное приложение. Не могу получить данные с сервера
Цитата Сообщение от Sergo_Dubovick Посмотреть сообщение
Подскажите, пожалуйста в чём тут проблема.
Когда вы закрываете поток ввода или вывода который получен от сокета, то вместе с ним закрывается сам сокет, отсюда и возникает ваша проблема. На клиенте вы производите закрытие потока вывода out чтоб дать понять серверу что передача данных от клиента завершилась, так в данном случае делать не надо. Пусть признаком окончания передачи данных от клиента будет например строка "END_OF_DATA". Тогда все заработает.

На скорую руку поравил код сервера и клиента:
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
import java.io.*;
import java.net.*;
 
public class Server {
 
  public static void main(String[] args) throws IOException {
    try
    {
        ServerSocket sSock = new ServerSocket(1234);
        Socket sock = sSock.accept();
        System.out.println("Client connected");
        DataInputStream is = new DataInputStream(sock.getInputStream());
        DataOutputStream out = new DataOutputStream(sock.getOutputStream());
        System.out.println("Waiting for data");
        String str, buff="";
        while(!(str = is.readUTF()).equals("END_OF_DATA"))
                {
                    System.out.println("Getting data");
                    buff = buff + str;
                }
        buff = buff + " out";
        System.out.println(buff);
        out.writeUTF(buff);
        out.writeUTF("END_OF_DATA");
        out.flush();
        out.close();
        is.close();
        sock.close();
        sSock.close();
    }
    catch (UnknownHostException e) {
        System.out.println("Host not found: " + e.getMessage());
    }
    catch (IOException ioe) {
        System.out.println("I/O Error " + ioe.getMessage());
    }
    
  }
}
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
    public void SendMsg()
    {
        Thread send = new Thread(new Runnable() {
            @Override
            public void run() {
                try {
                    Socket sock = new Socket("192.168.0.101", 1234);
                    DataOutputStream out = new DataOutputStream(sock.getOutputStream());
                    DataInputStream in = new DataInputStream(sock.getInputStream());
                    out.writeUTF("string");
                    out.writeUTF("END_OF_DATA"); 
                    out.flush();
                    String res;
                    while(!(res = in.readUTF()).equals("END_OF_DATA"))
                    {
                        str1  = str1 + res;
                    }
                    out.close();
                    in.close();
                    sock.close();
                    System.out.println(str1);
                } catch (UnknownHostException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        });
 
        send.start();
    }
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru