Witam, piszę aplikację która będzie wysyłać dane przez internet (konkretnie przez WiFi) i mam w związku z tym pytanie odnośnie problemów z gubieniem danych. Schemat mojej aplikacji wygląda następująco: aplikacja co jakiś czas (kilka godzin) będzie pobierać z bazy danych informacje, opakowywać je w plik XML a następnie wysyłać na serwer WWW. Muszę jednak wprowadzić jakieś zabezpieczenia przez gubieniem danych tak żeby pliki które dotarły uszkodzone zostały wysłane ponownie. Nigdy nie robiłem czegoś podobnego i kompletnie nie wiem jak się do tego zabrać. Najlepszym rozwiązaniem w tym przypadku będą sumy kontrolne CRC czy może coś innego? Dodam jeszcze, że ta aplikacja będzie działać na androidzie. Z góry dzięki za wszelkie wskazówki i podpowiedzi.
0
0
tcp Ci gwarantuje że pakiet doszedł albo dostaniesz błąd
0
Aha, czyli jak użyję w javie
HttpURLConnection connection= (HttpURLConnection) url.openConnection();
connection.setRequestProperty("Connection", "Keep-Alive");
I będę przez tą zmienną wysyłał pliki to automatycznie będą wysyłane przez TCP i w razie problemu pojawi się wyjątek tak?
0
tak
0
TCP w przeciwieństwie do UDP gwarantuje, że pakiety dotrą poprawne(nie zmienione z powodu błędu transmisji) i w odpowiedniej kolejności. W przeciwnym wypadku(np. awaria sieci) zawsze dostaniesz błąd/wyjątek.