Sobes.tech
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();