Как запустить ServerSocket на стати c ip? - PullRequest
0 голосов
/ 26 февраля 2020

ОБНОВЛЕНИЕ: точка доступа, созданная в oreo и ниже, имеет статус c IP, равный 192.168.43.1. Это изменение в Android 9 и выше. и я хочу сделать это для Android 9. Мне нужно запустить ServerSocket на статический c IP-адрес. Мой сценарий заключается в том, что мне нужно получить доступ к моему Серверу, который работает на Android, а устройство android на сервере имеет свой собственный WifiHotSpot без подключения к inte rnet. Клиенты будут подключены к серверу только тогда, когда они подключены к этой точке доступа. Кажется, я не могу найти способ сообщить мой IP-адрес SERVERSOCKET клиентам, так как я не могу отобразить его на экране (экран не будет виден пользователю - специальный случай использования). Вот почему мне нужен статический c IP для запуска ServerSocket, но, похоже, я не могу запустить его так, как будто я даю ему какой-либо IP, скажем, 192.168.43.180 это исключение: адрес EADDRESSNOTAVAIL недоступен. Любая помощь очень ценится.

SocketAddress socketAddress = new InetSocketAddress("192.168.43.128",2041);
   httpServerSocket = new ServerSocket();
   httpServerSocket.bind(socketAddress);
...