Тема застревает на serversocket.accept () в Android - PullRequest
0 голосов
/ 02 мая 2018

Я хочу создать коммуникационное приложение для Android, используя tcp server-client. Я использую Android телефон в качестве сервера и Linux PC в качестве клиента, я создал приложение на Linux, которое работает как клиент. Когда я пытаюсь создать сервер, он застрял в serversocket.accept (). Таким образом, клиент не может подключиться к серверу. Я использую следующий код для создания сервера

class Thread1 implements Runnable {
    int dsport = 48618
    @Override
    public void run() {

        try {
            server_socket = new ServerSocket(dsport);
        } catch (IOException e) {
            e.printStackTrace();
        }

        while (!Thread.currentThread().isInterrupted()) {

            try {
                socket = server_socket.accept();

            } catch (IOException e) {
                e.printStackTrace();
            }

        }
    }
}

И я использую Qt Creator на стороне клиента

void run()
 {
 Qstring iplist;
 QList<QHostAddress> ipadd = QNetworkInterface::allAddress();
 socket = new QTcpSocket(this);
 connect(socket,SIGNAL(connected()),this,SLOT(newConnection)));
 socket->connectToHost(ipadd.at(0),48618);
 }

void newConnection()
{
qDebug()<<"socket connected";
}

здесь ipadd.at (0) дает мне адрес локального хоста. Есть ли проблема с портом, который я использую? если да то как получить надежный порт для создания сервера. Как я могу решить эту проблему?

...