artykuły

Mam gniazdko UDP nasłuchujące na porcie X, gdy próbuję stworzyć gniazdko wysyłające w trybie Broadcast na tym samym porcie, otrzymuję wyjątek "Address in use" - co jest nie tak?

13:09
wto, 15 kwiecień 2014
Problemem nie jest oczywiście to, że oba typy gniazdek działają na tym samym porcie - w tym wypadku dane wysyłane przez gniazdko wysyłające, będą rozgłaszane po sieci i trafią również do naszego gniazdka nasłuchującego. Problemem jest tutaj co innego (miałem z tym spory kłopot). Otóż okazuje się, że w takim wypadku, gniazdka wysyłającego nie możemy utworzyć tak: socket = new DatagramSocket(1234); Zamiast tego, gniazdko wysyłające należy utworzyć i korzystać z niego w ten sposób: socket = new DatagramSocket(); datagramPacket = new DatagramPacket(data, data.length, address, 1234); socket.send(datagramPacket); Należy pamiętać również o tym, że nie mając uprawnień root, w urządzeniach z Androidem możemy nasłuchiwać jedynie na portach wyższych od 1024.

Podobne faq:

Skomentuj

Aby zamieścić komentarz, proszę włączyć JavaScript - niestety roboty spamujące dają mi niezmiernie popalić.






Komentarze czytelników

    Nie ma jeszcze żadnych komentarzy.
    Dexter