Junior — Middle
Koji komponenti implementiraju funkcionalnost socket-veza u sistemu?
sobes.tech АИ
Одговор од АИ
U Androidu, funkcionalnost soket konekcija obično se implementira pomoću sledećih komponenti:
- Socket iz Java API-ja (
java.net.Socket) — osnovna klasa za kreiranje TCP konekcija. - ServerSocket — za serverski deo, za slušanje dolaznih konekcija.
- InputStream i OutputStream — za čitanje i pisanje podataka putem soketa.
- AsyncTask, Thread ili Coroutine — za izvršavanje mrežnih operacija u posebnom thread-u, kako UI ne bi bio blokiran.
Takođe, mogu se koristiti biblioteke, na primer, OkHttp za WebSocket konekcije, koje pojednostavljuju rad sa soketima.
Primer kreiranja TCP soketa u posebnom thread-u:
new Thread(() -> {
try (Socket socket = new Socket("example.com", 1234)) {
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
// čitanje i pisanje podataka
} catch (IOException e) {
e.printStackTrace();
}
}).start();