Version 2.1 working

This commit is contained in:
Miguel Siebenhaar 2023-06-21 16:34:17 +02:00
parent e571373fbb
commit edcf555b5b
3 changed files with 33 additions and 8 deletions

View File

@ -141,7 +141,7 @@ public class DetectorService extends LifecycleService {
public void stringToStringbuffer(String string){ public void stringToStringbuffer(String string){
if(string != null) { if(string != null) {
stringBufferWifi.append(string).append("\n"); stringBufferWifi.insert(0,string + "\n");
} }
} }
@ -151,6 +151,9 @@ public class DetectorService extends LifecycleService {
} }
public boolean checkState(String string){ public boolean checkState(String string){
Log.d("state", String.valueOf(splitString(string)[4].equals("An"))); Log.d("state", String.valueOf(splitString(string)[4].equals("An")));
return splitString(string)[4].equals("An"); return splitString(string)[4].equals("An");

View File

@ -104,7 +104,7 @@ public class MainActivity extends AppCompatActivity {
detectorService.setOnDetectionListener(new DetectorService.OnDetectionListener() { detectorService.setOnDetectionListener(new DetectorService.OnDetectionListener() {
@Override @Override
public void onDetection(@NonNull StringBuffer stringBuffer) { public void onDetection(@NonNull StringBuffer stringBuffer) {
Log.d("onDetection", stringBuffer.toString()); Log.d("onDetection", stringBuffer.toString()); //Für oli hier Textview einbauen
} }
}); });
} }

View File

@ -32,6 +32,9 @@ public class WifiCommunication {
volatile private boolean running; volatile private boolean running;
private boolean Gruppe =true; private boolean Gruppe =true;
private boolean showMessage = true;
StringBuffer rxStringBuffer = new StringBuffer();
private OnConnectionListener listener; private OnConnectionListener listener;
@SuppressLint("SetTextI18n") @SuppressLint("SetTextI18n")
@ -80,16 +83,31 @@ public class WifiCommunication {
socket.receive(rxPacket); socket.receive(rxPacket);
rxString = new String(receiveData, 0, rxPacket.getLength()); rxString = new String(receiveData, 0, rxPacket.getLength());
String[] splitrxString = rxString.split(","); String[] splitrxString = rxString.split(",");
String[] splitrxStringBuffer = splitBufferIntoStrings(rxStringBuffer);
for(String elem: splitrxStringBuffer){
if(elem.equals(rxString)){
showMessage = false;
}else{
showMessage = true;
}
}
if(Gruppe){ if(Gruppe){
if(!previousRxString.equals(rxString) && splitrxString[0].equals("1") && splitrxString.length==7) { if(!previousRxString.equals(rxString) && splitrxString[0].equals("1") && splitrxString.length==7 && showMessage) {
//rxStringBuffer.append(rxString).append("\n"); rxStringBuffer.append(rxString).append("\n");
Log.d("empfangen", rxString);
sendWifiData(rxString);
//mainActivity.runOnUiThread(() -> mainActivity.tvMessages.setText(rxStringBuffer));
previousRxString = rxString;
}
}else{
if(!previousRxString.equals(rxString) && splitrxString[0].equals("1") && splitrxString.length==7 && showMessage) {
rxStringBuffer.append(rxString).append("\n");
Log.d("empfangen", rxString); Log.d("empfangen", rxString);
sendWifiData(rxString); sendWifiData(rxString);
//mainActivity.runOnUiThread(() -> mainActivity.tvMessages.setText(rxStringBuffer)); //mainActivity.runOnUiThread(() -> mainActivity.tvMessages.setText(rxStringBuffer));
previousRxString = rxString; previousRxString = rxString;
} }
} }
} while (running); } while (running);
} }
catch (IOException e) { catch (IOException e) {
@ -106,9 +124,9 @@ public class WifiCommunication {
if(send) if(send)
{ {
send = false; send = false;
SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss"); /*SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
Date curDate = new Date(System.currentTimeMillis()); Date curDate = new Date(System.currentTimeMillis());
String str = formatter.format(curDate); String str = formatter.format(curDate);*/
byte[] send_Data = new byte[512]; byte[] send_Data = new byte[512];
String txString = (messageToSend); //"1," +str+ ",Gruppe2," + getLocalIpAddress() + ",An,Video," String txString = (messageToSend); //"1," +str+ ",Gruppe2," + getLocalIpAddress() + ",An,Video,"
Log.d("send", txString); Log.d("send", txString);
@ -116,7 +134,7 @@ public class WifiCommunication {
DatagramPacket txPacket = new DatagramPacket(send_Data, txString.length(), address, port); DatagramPacket txPacket = new DatagramPacket(send_Data, txString.length(), address, port);
for(int i = 0; i < 300; i++) { for(int i = 0; i < 500; i++) {
socket.send(txPacket); socket.send(txPacket);
} }
} }
@ -151,4 +169,8 @@ public class WifiCommunication {
running = false; running = false;
socket.close(); socket.close();
} }
public String[] splitBufferIntoStrings(StringBuffer string){
String[] splitrxString2 = string.toString().split("\n");
return splitrxString2;
}
} }