Új hozzászólás Aktív témák
-
Sziasztok!
Tetszőleges számú androidos eszköz között (2-50db), wifi-n keresztül, internet nélkül, milyen osztályokkal/metódusokkal kommunikálhatok a leghatékonyabban? Próbálkozom az UDP-vel, ilyen módon:
Küldés:
public static class MessageSender extends Thread {
private volatile boolean flag = true;
@Override
public void run() {
while (flag) {
if (SharedData.messages.size() != 0) {
try {
byte[] data = SharedData.messages.get(0).getBytes();
DatagramSocket socket = new DatagramSocket();
DatagramPacket packet;
packet = new DatagramPacket(data, data.length, InetAddress.getByName(SharedData.broadcastAddress),
52202);
for (int i = 0; i < SharedData.packageQuantity; i++) {
socket.send(packet);
Thread.sleep(SharedData.packageDelay);
}
socket.close();
SharedData.messages.remove(0);
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
public void stopThread() {
flag = false;
}
}Fogadás:
class MessageListener extends Thread {
public volatile boolean flag = true;
@Override
public void run() {
while (flag) {
byte[] buf = new byte[64];
try {
DatagramSocket socket = new DatagramSocket(10002);
DatagramPacket packet = new DatagramPacket(buf, buf.length);
socket.receive(packet);
socket.close();
int len = packet.getLength();
byte[] data = packet.getData();
final String message = new String(data, 0, len);
...
} catch (Exception e) {
e.printStackTrace();
}
}
}
}A problemám az, hogy rettentően sok üzenet veszik el, illetve nem biztosított, hogy ha a server küld egy üzit a hálózatra, akkor azt megkapja az összes kliens. Ezt próbáltam meg kiküszöbölni a küldő részben azzal, hogy többször elküldöm kis szünetekkel ugyan azt az üzenetet, de így sem tökéletes, közel sem.
Teljesen rossz irányba mentem el? Vagy csak valami apróság miatt csúszik el az egész?
Új hozzászólás Aktív témák
- LEGO klub
- Mini-ITX
- Samsung Galaxy Felhasználók OFF topicja
- Kézilabda topik
- Tőzsde és gazdaság
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Nintendo Switch 2
- Elektromos rásegítésű kerékpárok
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- PS5 Pro+Sony Pulse 3D+Játék
- Bomba ár! HP EliteBook 840 G6 - i7-8GEN I 16GB I 512GB SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- Bomba ár! Lenovo X13 G2i - i5-1135G7 I 16GB I 256SSD I 13,3" WUXGA Touch I W11 I Cam I Gari!
- Bomba ár! Lenovo X1 Carbon G7: i5-8265U I 8GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gari!
- Bomba ár! HP EliteBook 845 G7 - Ryzen 5 4650U I 16GB I 512SSD I 14" FHD I Cam I W11 I Gari
- darkFlash CF8 Pro
- HIBÁTLAN iPhone 11 64GB Red-1 ÉV GARANCIA - Kártyafüggetlen, MS4388
- Macbook Pro M3 Max 16" - 64 GB/4TB/ AJÁNDÉK MAGIC KEYBOARD 3/ 27% ÁFÁS!
- Csere-Beszámítás! Acer Nitro 5 AN515-57! I7 11800H / RTX 3050Ti / 16GB DDR4 / 512GB Nvme SSD!
- BESZÁMÍTÁS! ASRock X870 R9 7950X3D 32GB DDR5 1TB SSD RTX 4090 24GB Be quiet Pure Base 501 LX white
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

