Ответ
В Android для работы с сокетами используются классы из пакета java.net:
- Socket - клиентский сокет для установки соединения с сервером:
Socket socket = new Socket("192.168.1.1", 8080);
- ServerSocket - серверный сокет для ожидания подключений:
ServerSocket serverSocket = new ServerSocket(8080);
Socket clientSocket = serverSocket.accept();
- DatagramSocket - для UDP-соединений
Основные операции:
getInputStream()/getOutputStream()- получение потоков ввода/выводаconnect()/bind()- установка соединенияclose()- закрытие сокета
Важно:
- Работа с сетью требует разрешения INTERNET в манифесте
- Сетевые операции нельзя выполнять в UI-потоке (используйте AsyncTask, Coroutines и т.д.)
- После использования сокеты нужно закрывать в finally-блоке