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

Чтение данных с сервера (TCP клиент) - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Android Hello World http://www.cyberforum.ru/android-dev/thread1831178.html
Понемногу учусь java. Так получилось, что компьютер очень слабенький за которым я работаю не поддерживает виртуализацию, точнее процессор компа. И не хотелось бы плодить темы, но есть несколько вопросов. Я хочу работать в NetBeans. Мне кажется он меньше всего потребляет ресурсов компьютера. Вопрос 1: Можно ли придумать что нибудь по поводу эмулятора если комп его не поддерживает? И ...
Android Как сделать так, чтобы Service работал после закрытия программы Здравствуйте! Никак не могу разобраться, как сделать так, чтобы Service работал после закрытия программы. Вот что я написал в манифесте: <service android:name=".MyService" android:enabled="true" android:exported="true"/> В самом класса выполняю все действия в отдельном потоке, есть предположения, что нужно Service выполнять в новом процессе, но я не знаю, как это сделать. Ещё наткнулся вот... http://www.cyberforum.ru/android-dev/thread1830734.html
Android Как узнать имя Активити?
Всем добрый день! Подскажите, пожалуйста. Есть приложенька на андроиде. Как можно узнать название класса Активити?
Android TensorFlow на android, сборка проекта посредством Bazel
Есть тут люди, у которых получилось успешно собрать тестовый проект tensorflow под android? Речь идет вот об этом: https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android Понимаю, что вопрос, на котором я застопорился, к разработке под андроид по сути отношения, наверно, не имеет, но просто надеюсь на то, что кто-то любопытный успешно сбилдил этот проект, а значит...
Android Nine patch - неправильно растягивается http://www.cyberforum.ru/android-dev/thread1830578.html
Красным отмечено то что не правильно можно решить?
Android На телефоне highscreen 3 на всех активити происходит быстрый самовозврат к главной активити Сделал меню в виде ListView. При клике на меню запускаются активити. На эмуляторе работает, на телефоне моем LG все работает. На телефоне highscreen 3 все активити запускаются , но потом быстро самопроизвольно происходит возврат к главной активити. Это баг телефона? или что-то еще... подробнее

Показать сообщение отдельно
Arion32
1 / 1 / 0
Регистрация: 17.10.2016
Сообщений: 78
21.10.2016, 21:37  [ТС]     Чтение данных с сервера (TCP клиент)
Alexvp, vxg,
косяк. не то отправил.
Проблема в том что клиент не читает сообщения с сервера.

Что под этим подразумевается?
Получение порциями непрерывным потоком
помогите пожалуйста
сам код.

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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
 
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.Socket;
import java.net.UnknownHostException;
 
 
public class MainActivity extends AppCompatActivity {
    Button buttonEnter;
    TextView textViewHeader;
    EditText editTextLogin;
    Socket client = null;
    DataOutputStream dataToServerStream = null;
    DataInputStream dataFromServerStream = null;
    String r = "";
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        buttonEnter = (Button) findViewById(R.id.buttonEnter);
        textViewHeader = (TextView) findViewById(R.id.textViewHeader);
        editTextLogin = (EditText) findViewById(R.id.editTextLogin);
 
        class ConnectToServer extends AsyncTask<Void, Void, Void> {
            @Override
            protected Void doInBackground(Void... voids) {
                //подключение к серверу
                try {
                    client = new Socket("192.168.187.218", 40512);
                    dataToServerStream = new DataOutputStream(client.getOutputStream());
                    dataFromServerStream = new DataInputStream(client.getInputStream());
                    Log.i("Socket", "Start");
 
 
                } catch (UnknownHostException e) {
                    e.printStackTrace();
                } catch (IOException e) {
                    System.out.println("Got an IOException: " + e.getMessage());
                }
                return null;
            }
        }
 
        ConnectToServer Connect = new ConnectToServer();
        Connect.execute();
 
 
        class GetDataFromServer extends AsyncTask<Void, Void, Void> {
 
            @Override
            public Void doInBackground(Void... voids) {
                //чтение данных с сервера
                while (true) {
 
                    try {
 
                        byte[] readBuffer = new byte[5 * 1024];
                        int read = 0;
                        read = dataFromServerStream.read(readBuffer);
                        if (read != -1) {
                            byte[] readData = new byte[read];
                            System.arraycopy(readBuffer, 0, readData, 0, read);
                            try {
                                r = new String(readData, "UTF-8");
                            } catch (UnsupportedEncodingException e) {
                            }
                        }
                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    return null;
 
 
                }
            }
        }
        textViewHeader.setText(r);
        GetDataFromServer GetData = new GetDataFromServer();
        GetData.execute();
 
 
        //обработчик нажатий
        View.OnClickListener OnClickListener = new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                switch (view.getId()) {
                    case R.id.buttonEnter:
                        try {
                            //отправка данных на сервер
                            String sendText = editTextLogin.getText().toString();
                            byte[] buf = sendText.getBytes("UTF-8");
                            dataToServerStream.write(buf, 0, buf.length);
                        } catch (IOException e) {
                            e.printStackTrace();
                        }
                        break;
                }
            }
        };
 
        buttonEnter.setOnClickListener(OnClickListener);
    }
}
 
Текущее время: 10:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru