Как установить соединение с ServerSocket локального компьютера с мобильного устройства? Всем доброго времени суток. В рамках работы над моим pet-проектом мне понадобилось сделать быстрый обмен данными между сервером и мобильными устройствами. Есть такой код клиента:public class TestRunnableClientTester implements Runnable { static Socket socket; @Override public void run() { try { socket = new Socket("192.168.100.26", 4444); } catch (Exception e) { e.printStackTrace(); } try ( DataOutputStream oos = new DataOutputStream(socket.getOutputStream()); DataInputStream ois = new DataInputStream(socket.getInputStream())) { int i = 0; while (i < 1000) { oos.writeInt(i); oos.flush(); int in = ois.readInt(); System.out.println(in); i++; } } catch (IOException e) { e.printStackTrace(); } } } На строчке socket = new Socket("192.168.100.26", 4444);, если поставить брейкпоинт, то программа дальше не выполняется. То есть происходит выполнение этой строчки и всё, что очень странно. Но на устройстве Huawei выкидывается ошибка :java.net.ConnectException: failed to connect to /192.168.100.26 (port 4444): connect failed: EHOSTUNREACH (No route to host) Ноутбук и телефоны подключены к одному вайфаю, доступ к интернету везде есть. Брэндамауэр на ноуте выключен. Самое интересное, что несколько дней назад данный код работал, а сейчас уже нет. Уже закончились идеи, в чём может быть дело. Всем заранее спасибо за ответы!
Проблема, скорее всего, заключается в настройках фаервола или в самом сервере. Попробуйте выполнить следующее:
Убедитесь что ваш сервер (например, компьютер с IP адресом 192.168.100.26) запущен и слушает порт 4444.Проверьте настройки фаервола на вашем сервере, возможно порт 4444 заблокирован. Попробуйте добавить исключение для этого порта.Убедитесь, что ваши устройства и сервер находятся в одной локальной сети.Попробуйте использовать другой порт для соединения, например 80 или 8080.Проверьте IP адрес вашего сервера, возможно он изменился.
Если после выполнения вышеперечисленных действий проблема сохраняется, попробуйте запустить сервер на другом устройстве в локальной сети и попробовать подключиться к нему с мобильного устройства. Таким образом вы сможете узнать, в чем именно проблема. Возможно, проблема кроется в настройках вашего сервера или в самом коде.
Надеюсь, это поможет вам разобраться с проблемой. Если у вас будут дополнительные вопросы, не стесняйтесь обращаться. Удачи!
Проблема, скорее всего, заключается в настройках фаервола или в самом сервере. Попробуйте выполнить следующее:
Убедитесь что ваш сервер (например, компьютер с IP адресом 192.168.100.26) запущен и слушает порт 4444.Проверьте настройки фаервола на вашем сервере, возможно порт 4444 заблокирован. Попробуйте добавить исключение для этого порта.Убедитесь, что ваши устройства и сервер находятся в одной локальной сети.Попробуйте использовать другой порт для соединения, например 80 или 8080.Проверьте IP адрес вашего сервера, возможно он изменился.Если после выполнения вышеперечисленных действий проблема сохраняется, попробуйте запустить сервер на другом устройстве в локальной сети и попробовать подключиться к нему с мобильного устройства. Таким образом вы сможете узнать, в чем именно проблема. Возможно, проблема кроется в настройках вашего сервера или в самом коде.
Надеюсь, это поможет вам разобраться с проблемой. Если у вас будут дополнительные вопросы, не стесняйтесь обращаться. Удачи!