Android - получение данных WiFi через TCP / IP - PullRequest
0 голосов
/ 27 июня 2018

Я не получаю сообщение с сервера после отправки команды на получение данных. Строка после inputstream.read не выполняется.

Это исполняемый код для получения сообщения с сервера.

public class ReceiveRunnable implements Runnable {
        private Socket sock;
        private InputStream input;

        public ReceiveRunnable(Socket server) {
            sock = server;
            try {
                input = sock.getInputStream();
            } catch (Exception e) {
            }
        }

        @Override
        public void run() {
            Log.d(TAG, "Receiving started");
            while (isConnected()) {
                if (!receiveThreadRunning)
                    receiveThreadRunning = true;

                startTime = System.currentTimeMillis();
                try {
                    byte[] data = new byte[50];
                    //Read the first integer, it defines the length of the data to expect
                    input.read(data, 0, data.length);
                    int length = data[2];
                    String str = new String(data, "UTF-8"); // for UTF-8 encoding
                    mList.OnDataIncoming(str);
                    stopThreads();
                } catch (Exception e) {
                    if (mList != null)
                        mList.OnConnectionerror();
                    Disconnect(); //Gets stuck in a loop if we don't call this on error!
                }
            }
            receiveThreadRunning = false;
            Log.d(TAG, "Receiving stopped");
        }

    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...