Tech Zajawka / Warsztat / poradnik

LocalSend: przesyłanie plików między Windows i Androidem bez chmury i bez konta

Przesyłanie plików między komputerem z Windows a telefonem z Androidem przez własną sieć lokalną, bez konta, chmury i przekierowywania portów na routerze. Instalacja, pierwszy transfer, ustawienia odbioru, szyfrowanie i PIN, wykrywanie urządzeń, gałąź macOS i iPhone, a przede wszystkim to, dlaczego urządzenia czasem się nie widzą.

Warsztat M1lczu 31 min czytania
Okładka: LocalSend: przesyłanie plików między Windows i Androidem bez chmury i bez konta

Przeniesienie kilkunastu zdjęć z telefonu na komputer potrafi być zaskakująco uciążliwe. Kabel wymaga sterowników i cierpliwości, wysyłka mailem do siebie samego ma limity załączników, a wrzucenie plików do chmury oznacza, że prywatne materiały krążą przez serwer firmy trzeciej tylko po to, żeby przebyć trzy metry. LocalSend rozwiązuje ten konkretny problem: to darmowa aplikacja o otwartym kodzie źródłowym, która pozwala bezpiecznie udostępniać pliki i wiadomości urządzeniom w pobliżu poprzez sieć lokalną, bez połączenia z internetem. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Dalej: pierwsza konfiguracja pary Windows plus Android, odbiór plików, ustawienia bezpieczeństwa i wykrywania, a na końcu różnice w gałęzi macOS i iPhone'a. Osobna część dotyczy sytuacji, w której urządzenia się nie widzą: od uprawnień aplikacji po ustawienia sieci i zapory.

Czym LocalSend jest, a czym nie jest

LocalSend działa jako aplikacja na obu urządzeniach jednocześnie. Transmisja idzie bezpośrednio między nimi i jest szyfrowana przy użyciu HTTPS. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Nie ma pośredniczącego serwera, nie ma logowania i nie ma konta. (LocalSend - strona główna i FAQ)

Twórcy deklarują, że aplikacja nie zbiera, nie przechowuje ani nie przetwarza żadnych danych osobowych ani nieosobowych. (LocalSend - Privacy Policy) Wpisy w sklepach potwierdzają tę deklarację: w Google Play widnieje informacja o braku danych zbieranych i braku danych udostępnianych podmiotom trzecim, (LocalSend w Google Play) a w App Store „The developer does not collect any data from this app”. (LocalSend w App Store)

Warto od razu ustawić właściwe oczekiwania. LocalSend to narzędzie do jednorazowego przesłania wybranych elementów, a nie system kopii zapasowych ani mechanizm synchronizacji folderów. Aplikacja przenosi wpisy plikowe, nie utrzymuje stanu dwóch katalogów w zgodzie i nie wersjonuje niczego. Według dokumentacji klienta wiersza poleceń (CLI) puste katalogi nie są przesyłane, ponieważ LocalSend przenosi wpisy plikowe, a nie katalogowe. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Nie służy też do wysyłania czegokolwiek przez internet: dokumentacja projektu wprost stwierdza, że transfer odbywa się w sieci lokalnej i dane nie opuszczają tej sieci. (LocalSend - strona główna i FAQ) Nie ma więc powodu przekierowywać portów na routerze ani wystawiać czegokolwiek publicznie; sensowne użycie LocalSend nie wymaga żadnego otwartego portu na styku z internetem.

Kilka pojęć, które pojawią się dalej:

  • Sieć lokalna (LAN) to sieć domowa lub biurowa, w której urządzenia widzą się nawzajem, zwykle za jednym routerem. Nie musi to być jedno łącze bezprzewodowe: komputer podłączony kablem i telefon po Wi-Fi są w tej samej sieci lokalnej, jeśli oba korzystają z tego samego routera.
  • Alias to nazwa, pod którą urządzenie pokazuje się innym; w ustawieniach sieciowych aplikacji można ją zmienić albo wygenerować losowo. (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  • Multicast to sposób rozgłoszenia komunikatu do wielu urządzeń w sieci naraz; LocalSend używa go do automatycznego wykrywania. (LocalSend Protocol v2.2 - dokumentacja protokołu)
  • Izolacja klientów (AP isolation) to funkcja routera, która zabrania urządzeniom w tej samej sieci komunikować się ze sobą. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))
  • Suma kontrolna to krótki „odcisk” zawartości pliku, który pozwala sprawdzić, czy dane dotarły w całości i bez uszkodzenia.

Co jest potrzebne

Dokumentacja projektu podaje następujące minimalne wersje systemów: Android 5.0, iOS 12.0, macOS 11 Big Sur oraz Windows 10. Dla Windows 7 ostatnim wspieranym wydaniem było v1.15.4. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Wpis w App Store deklaruje wymagania nieco wyższe, bo iOS 13.0 i macOS 11.0. (LocalSend w App Store) Na starszym sprzęcie Apple bezpieczniej przyjąć wartości ze sklepu, ponieważ to on decyduje o możliwości instalacji. Podobnie z Androidem: wpis w F-Droid dla wydania 1.18.2 podaje „This version requires Android 7.0 or newer”, podczas gdy kompilacje 1.17.0 z tego samego katalogu wymagały jeszcze Androida 5.0. (LocalSend w F-Droid) Na starym telefonie liczy się więc wersja pokazana w sklepie, a nie tabela w README; sklep po prostu nie zaproponuje instalacji, jeśli system jest za stary.

Poza tym potrzebne są dwie rzeczy. Po pierwsze, oba urządzenia muszą być wzajemnie osiągalne w tej samej sieci lokalnej. Nie chodzi o identyczną nazwę sieci ani o to samo pasmo: komputer podłączony kablem Ethernet i telefon na Wi-Fi spełniają ten warunek, o ile obsługuje je ten sam router i nic w nim nie rozdziela obu segmentów. Nie spełniają go natomiast urządzenie w sieci gościnnej i urządzenie w sieci głównej, ani telefon korzystający z transmisji komórkowej zamiast z Wi-Fi. Aplikacja formułuje to skrótowo w podpowiedzi przy wysyłaniu: „Upewnij się, że żądany cel również znajduje się w tej samej sieci Wi-Fi”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Po drugie, konieczne jest miejsce na dysku i w pamięci telefonu na przesyłane pliki. Żadne konto, subskrypcja ani rejestracja nie są wymagane. (LocalSend - strona główna i FAQ)

Aplikacja jest bezpłatna i wolna od reklam. (LocalSend - strona główna i FAQ) W wersji na iOS dostępne są opcjonalne zakupy w aplikacji będące darowiznami na rzecz projektu; nie odblokowują one żadnych funkcji. (LocalSend w App Store)

Przygotowanie i bezpieczeństwo przed instalacją

Kilka decyzji lepiej podjąć przed pierwszym uruchomieniem niż po nim.

Skąd pobierać. Dokumentacja zaleca instalację ze sklepu z aplikacjami albo z menedżera pakietów, ponieważ aplikacja nie ma automatycznej aktualizacji. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Dla Windows oficjalnie wskazywane kanały to Winget, Scoop, Chocolatey, instalator EXE oraz przenośne archiwum ZIP; dla Androida Google Play, F-Droid i plik APK z wydań; dla macOS App Store, Homebrew i instalator DMG; dla iOS App Store. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Różnica jest praktyczna: sklep na telefonie aktualizuje aplikacje sam, natomiast menedżer pakietów na Windows tylko ułatwia aktualizację, ale jej nie wykonuje bez polecenia - trzeba o nią zadbać samodzielnie, uruchamiając od czasu do czasu aktualizację pakietów. Instalator EXE i wersja przenośna nie dają nawet tego ułatwienia; przy nich nową wersję trzeba pobrać ręcznie.

Podpis cyfrowy w Windows. Polityka projektu przewiduje automatyczne budowanie oficjalnych artefaktów dla Windows, czyli przenośnego ZIP-a, instalatora EXE i pomocnika MSIX, oraz podpisywanie przez usługę SignPath z ręcznym zatwierdzaniem każdego żądania. Dla wydania 1.18.2 opis ten należy traktować jako stan docelowy po przywróceniu podpisywania w kolejnych wydaniach. Podpisane pliki pokazują jako wydawcę „SignPath Foundation”, ponieważ certyfikat należy do fundacji, a nie do projektu. (LocalSend - Code signing policy) Widok nazwy fundacji zamiast nazwy LocalSend w oknie kontroli konta użytkownika jest zatem oczekiwany, a nie podejrzany. Tyle polityka; bieżące wydanie wygląda inaczej. W wydaniu 1.18.2 jedyny instalator EXE nazywa się LocalSend-1.18.2-windows-x86-64-unsigned.exe, a wśród plików wydania nie ma żadnego pakietu MSIX. (LocalSend v1.18.2 - informacje o wydaniu) Opis wydania stwierdza wprost, że instalator EXE nie został jeszcze opublikowany, i odsyła do zgłoszenia, w którym autor projektu czeka na klucze podpisu od SignPath; kilka dni później dopisał tam, że udostępnia niepodpisany instalator dla doświadczonych użytkowników. (LocalSend v1.18.2 - informacje o wydaniu) (LocalSend - zgłoszenie #3270: oczekiwanie na certyfikat SignPath dla Windows) Ten sam niepodpisany plik wskazuje manifest winget dla wersji 1.18.2, więc dotyczy to także instalacji poleceniem winget. (Manifest LocalSend w repozytorium winget-pkgs) W wydaniu 1.18.2 ani instalator EXE, ani aplikacja LocalSend w przenośnych paczkach ZIP nie stanowią podpisanej alternatywy: opis wydania wskazuje niepodpisany instalator, (LocalSend v1.18.2 - informacje o wydaniu) a workflow tej wersji wyłącza podpisywanie ZIP-ów i publikuje je jako niepodpisane. (LocalSend v1.18.2 - workflow wydania i wyłączone podpisywanie) Brak podpisu aplikacji jest więc zgodny z opisem procesu wydania, ale nie potwierdza pochodzenia ani bezpieczeństwa pobranego pliku. Brak dopisku unsigned w nazwie ZIP-a niczego tu nie zmienia. Dla pobranego instalatora EXE lub archiwum ZIP porównać wynik Get-FileHash -Algorithm SHA256 w PowerShell, ze wskazaniem ścieżki pobranego pliku, z sumą przypisaną do dokładnie tego pliku w sekcji Assets oficjalnego wydania. Dla ZIP-a porównuje się sumę archiwum przed rozpakowaniem, nie pliku wykonywalnego z jego wnętrza. (LocalSend v1.18.2 - informacje o wydaniu) Zgodność sum potwierdza zgodność pliku z publikacją, nie stanowi niezależnego dowodu autentyczności ani gwarancji bezpieczeństwa. Jeżeli wymagany jest podpis cyfrowy, przed pobraniem sprawdzić opis wydania i stan zgłoszenia #3270, które na 2026-09-08 pozostaje otwarte. (LocalSend v1.18.2 - informacje o wydaniu) (LocalSend - zgłoszenie #3270: oczekiwanie na certyfikat SignPath dla Windows)

Nieoficjalne kompilacje. W dokumentacji znajduje się ostrzeżenie dotyczące nieoficjalnego podglądu MSIX budowanego z najnowszych commitów: stabilność nie jest gwarantowana. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Do codziennego użytku nie jest to właściwy wybór.

Sieć. LocalSend przesyła dane wyłącznie w sieci, do której podłączone są oba urządzenia. Zanim wyśle się cokolwiek wrażliwego, warto sprawdzić, w jakiej sieci znajduje się komputer. Publiczna sieć w kawiarni czy hotelu jest do tego złym miejscem, i to niezależnie od szyfrowania samego transferu, ponieważ z takiej sieci korzystają nieznane urządzenia. Sieć gościnna w domu również bywa problematyczna, ale z innego powodu: to właśnie w niej routery najczęściej włączają izolację klientów, przez co wykrywanie po prostu nie zadziała. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Instalacja krok po kroku

Windows

  1. Otworzyć wiersz polecenia albo PowerShell i wydać polecenie winget install --id LocalSend.LocalSend -e. Identyfikator pakietu pochodzi z manifestu w repozytorium winget-pkgs. (Manifest LocalSend w repozytorium winget-pkgs) Alternatywnie można pobrać instalator EXE lub przenośne archiwum ZIP z sekcji pobierania w dokumentacji projektu. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))
  2. Jeżeli instalacja przebiega przez instalator EXE, może pojawić się monit kontroli konta użytkownika; manifest winget przewiduje instalację dla bieżącego użytkownika bez podnoszenia uprawnień oraz dla wszystkich użytkowników z podniesieniem. (Manifest LocalSend w repozytorium winget-pkgs) Uwaga na pole wydawcy: w wydaniu 1.18.2 instalator, także ten pobierany przez winget, jest plikiem z dopiskiem unsigned, więc w oknie pojawi się nieznany wydawca, a nie „SignPath Foundation”. (LocalSend v1.18.2 - informacje o wydaniu) (Manifest LocalSend w repozytorium winget-pkgs) Nazwa pliku bez dopisku unsigned nie gwarantuje podpisu. Dla pobranego EXE lub ZIP-a wykonać opisane wyżej porównanie SHA-256 z sumą dokładnego pliku oficjalnego wydania. (LocalSend v1.18.2 - informacje o wydaniu) Jeżeli wymagany jest podpis, przed instalacją sprawdzić opis wydania i stan zgłoszenia #3270. (LocalSend v1.18.2 - informacje o wydaniu) (LocalSend - zgłoszenie #3270: oczekiwanie na certyfikat SignPath dla Windows)
  3. Uruchomić aplikację. Ekran startowy zawiera trzy zakładki: „Odbierz”, „Wyślij” i „Ustawienia”. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Wariant przenośny przydaje się, gdy komputer jest współdzielony albo gdy nie chce się nic instalować. Aby aplikacja przechowywała ustawienia obok siebie, a nie w profilu użytkownika, wystarczy utworzyć plik settings.json w tym samym katalogu co plik wykonywalny; plik może być pusty. Tryb przenośny wprowadzono w wersji 1.13.0. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Android

  1. Zainstalować aplikację „LocalSend: Transfer Files” z Google Play, ewentualnie z katalogu F-Droid, jeśli preferowane są wyłącznie otwarte źródła. (LocalSend w Google Play) (LocalSend w F-Droid) Nazwa pakietu to org.localsend.localsend_app. (LocalSend w F-Droid)
  2. Uruchomić aplikację i przyznać tylko te zgody, które mają sens dla transferu. Pierwsza to dostęp do sieci lokalnej: w wydaniu 1.18.1 dodano uprawnienie ACCESS_LOCAL_NETWORK, które według changelogu jest wymagane na Androidzie 17 i nowszych. (LocalSend - Changelog) Jeśli system o nie zapyta, trzeba udzielić zgody. Bez tej zgody aplikacja nie znajdzie innych urządzeń, o czym sama informuje komunikatem „LocalSend nie może znaleźć innych urządzeń bez uprawnienia do skanowania sieci lokalnej. Udziel tego uprawnienia w ustawieniach.” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Druga to dostęp do konkretnych plików lub zdjęć w momencie ich wybierania; jeśli system proponuje wybór między dostępem do wszystkich zdjęć a wskazaniem pojedynczych, wystarczy ta druga opcja. Trzecia, opcjonalna, to powiadomienia: od wersji 1.18.0 transfer na Androidzie działa w tle, a wpis w F-Droid wymienia wśród uprawnień pokazywanie powiadomień i uruchamianie usługi pierwszoplanowej. (LocalSend - Changelog) (LocalSend w F-Droid) Zgoda na powiadomienia służy śledzeniu postępu przy wyłączonym ekranie. Wszystkie inne prośby, o które mogłaby zapytać aplikacja lub system, są do transferu zbędne.
  3. Sprawdzić, że telefon jest podłączony do Wi-Fi obsługiwanego przez ten sam router co komputer, a nie do transmisji komórkowej.

Na obu urządzeniach warto na tym etapie zajrzeć do „Ustawienia” i porównać wartości w sekcji „Sieć”: port, adres multicast i przełącznik „Szyfrowanie” muszą być takie same po obu stronach, inaczej urządzenia się nie zobaczą. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Domyślne wartości to port 53317 i grupa multicast 224.0.0.167, i nie ma powodu ich zmieniać. (LocalSend Protocol v2.2 - dokumentacja protokołu) Sama aplikacja ostrzega, że przy niestandardowym porcie lub niestandardowym adresie multicast inne urządzenia mogą go nie wykryć. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Zmiana portu nie jest też obejściem czegokolwiek: nie omija ani izolacji klientów na routerze, ani reguł zapory, bo obie te blokady działają niezależnie od tego, który numer portu zostanie wpisany.

Pierwszy transfer: z Windows na Androida

  1. Na komputerze przejść do zakładki „Wyślij”.
  2. Wskazać materiał do wysłania. Na komputerze podstawowe drogi to wybór pliku i wybór folderu; pliki można też po prostu przeciągnąć na okno aplikacji. Zestaw przycisków w tej sekcji zależy od systemu - na telefonie pojawiają się dodatkowe źródła, na przykład media z galerii - więc na komputerze wystarczy trzymać się wyboru pliku. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Na potrzeby pierwszej próby najlepiej wybrać jeden niewielki plik, na przykład zdjęcie.
  3. Nad listą pojawi się podsumowanie wyboru z liczbą plików i łącznym rozmiarem. (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  4. W sekcji „Urządzenia w pobliżu” odszukać telefon. Jeżeli lista jest pusta, użyć przycisku „Szukaj urządzeń”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Urządzenia identyfikowane są aliasem, czyli dwuczłonową nazwą w rodzaju „Nice Orange”, generowaną automatycznie. (LocalSend Protocol v2.2 - dokumentacja protokołu)
  5. Kliknąć kafelek telefonu. Aplikacja pokaże „Czekanie na odpowiedź…”. (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  6. Na telefonie pojawi się pytanie w formie „ chce wysłać Ci plik”. Wybrać „Akceptuj”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Na tym ekranie można też, korzystając z opcji, zmienić miejsce docelowe albo odrzucić część elementów.
  7. Obie strony zobaczą ekran postępu z tytułem „Wysyłanie plików” lub „Odbieranie plików”, licznikiem plików, rozmiarem i prędkością. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Krok 6 wymaga jednego zastrzeżenia. Potwierdzenie na telefonie oznacza wyłącznie zgodę na przyjęcie tego, co przyszło - nie jest dowodem, że po drugiej stronie stoi właśnie ten komputer. Aplikacja pokazuje przy żądaniu alias nadawcy, a alias to tylko etykieta, generowana automatycznie i możliwa do ustawienia dowolnie. (LocalSend Protocol v2.2 - dokumentacja protokołu) (LocalSend - polskie tłumaczenie interfejsu (pl.json)) W sieci, w której są obce urządzenia, samo „Akceptuj” nie zastępuje sprawdzenia, kto wysyła; służą do tego opisane dalej porównanie w widoku „Zweryfikuj” oraz kod PIN.

Test powodzenia. Transfer się udał, jeśli na telefonie w zakładce „Odbierz” dostępna jest „Historia” z nowym wpisem, a pozycja z menu wpisu „Otwórz plik” faktycznie otwiera przesłany materiał. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Domyślnie pliki trafiają do folderu pobierania urządzenia, co można zmienić w ustawieniach. (LocalSend - strona główna i FAQ) W ustawieniach odbioru odpowiada za to pozycja „Miejsce docelowe” z wartością domyślną opisaną jako „(Pobrane)”. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Transfer w drugą stronę: z Androida na Windows

  1. Na telefonie otworzyć zakładkę „Wyślij” i wybrać materiał. Wygodniejsza bywa druga droga: użyć systemowej funkcji „Udostępnij” w galerii lub menedżerze plików i wskazać LocalSend jako cel. Aplikacja sama podpowiada tę możliwość komunikatem: „Możesz także skorzystać z funkcji »Udostępnij« swojego urządzenia mobilnego, aby łatwiej wybierać pliki.” (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  2. Wskazać komputer na liście urządzeń w pobliżu.
  3. Na komputerze zaakceptować żądanie.

Jeśli komputer nie pojawia się na liście telefonu, choć w odwrotną stronę wszystko działało, to typowy objaw blokady zapory po stronie Windows. Aplikacja opisuje ten przypadek na stronie „Rozwiązywanie problemów” słowami: „Aplikacja może wysyłać pliki do innych urządzeń, ale inne urządzenia nie mogą wysyłać plików do tego urządzenia”, i podaje rozwiązanie polegające na zezwoleniu na połączenia przychodzące UDP i TCP na porcie aplikacji. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Szczegóły w sekcji o błędach poniżej.

Odbiór, historia i szybki zapis

Zakładka „Odbierz” pokazuje adres IP, port i alias urządzenia; te trzy wartości przydają się przy ręcznym łączeniu. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) W ustawieniach odbioru dostępne są między innymi:

  • „Szybki zapis” - żądania są akceptowane automatycznie, bez pytania. Aplikacja dołącza do tej opcji ostrzeżenie: „Żądania plików są akceptowane automatycznie. Pamiętaj, że każdy w sieci lokalnej może przesyłać Ci pliki.” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Na komputerze stacjonarnym w domu bywa to wygodne, ale w sieci, której się nie kontroluje, jest to zła decyzja.
  • „Szybki zapis dla »Ulubionych«” - łagodniejszy wariant, w którym automatycznie akceptowane są wyłącznie żądania z urządzeń dodanych do ulubionych. Od wersji 1.18.0 automatyczne przyjmowanie plików od ulubionych urządzeń jest domyślnie włączone i można je wyłączyć w ustawieniach. (LocalSend - Changelog) (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  • „Wymagaj kodu PIN” - odbiór wymaga podania kodu przez nadawcę. Opcję wymuszania PIN-u przy odbiorze plików dodano w wersji 1.15.0. (LocalSend - Changelog)
  • „Zakończ automatycznie” - ekran transferu zamyka się sam po udanym odbiorze.
  • „Zapisz media w galerii” i „Zapisz w historii” - sterują tym, gdzie trafiają zdjęcia i filmy oraz czy transfer zostawia ślad w historii aplikacji.
  • „Sprawdź sumy kontrolne podczas odbierania plików” - weryfikacja integralności odebranych danych. Obsługa sum kontrolnych pojawiła się w wersji 1.18.0 i jest domyślnie włączona. (LocalSend - Changelog) (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Po stronie wysyłania odpowiednikiem ostatniej pozycji jest „Twórz sumy kontrolne podczas wysyłania plików”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Zasada jest prosta: nadawca dołącza do pliku jego skrót, a odbiorca po zapisaniu sprawdza, czy dane się zgadzają, i zgłasza błąd przy niezgodności. (LocalSend Protocol v2.2 - dokumentacja protokołu) Włączona opcja dokłada przed wysyłką etap widoczny na ekranie jako „Obliczanie sumy kontrolnej”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Wyłączenie obu opcji pomija ten etap kosztem braku kontroli, czy plik dotarł nieuszkodzony; czy i o ile skraca to cały transfer, zależy od sprzętu i nie ma na to danych, więc nie warto tego robić w nadziei na przyspieszenie.

Historia odbioru dostępna jest w osobnym widoku z pozycjami „Otwórz folder” i „Usuń historię”, a pojedynczy wpis oferuje „Otwórz plik”, „Pokaż w folderze”, „Informacje” i „Usuń z historii”. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Bezpieczeństwo i wykrywanie: co naprawdę chroni transfer

Szyfrowanie. Cała komunikacja idzie po HTTPS, a certyfikat jest generowany na bieżąco na każdym urządzeniu. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Certyfikat jest samopodpisany, a odcisk palca to po prostu skrót SHA-256 tego certyfikatu. (LocalSend Protocol v2.2 - dokumentacja protokołu) Chroni to treść transferu przed podsłuchem w sieci, ale nie dowodzi tożsamości drugiej strony: nie ma żadnego niezależnego urzędu, który potwierdziłby, że certyfikat należy do tego urządzenia, za które się podaje. HTTPS w LocalSend odpowiada więc na pytanie „czy ktoś po drodze może to odczytać”, a nie na pytanie „czy to na pewno mój telefon”. Na to drugie odpowiadają dopiero porównanie urządzeń i kod PIN, opisane niżej.

Szyfrowanie można wyłączyć w ustawieniach sieciowych. Aplikacja pokazuje wtedy komunikat: „Komunikacja odbywa się teraz za pomocą niezaszyfrowanego protokołu HTTP. Aby korzystać z HTTPS, włącz ponownie szyfrowanie.” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Historycznie wyłączanie szyfrowania było poradą na wolne transfery i taka wskazówka nadal figuruje w tabeli rozwiązywania problemów w dokumentacji. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Nowsze wydania zmieniły ten obraz: opis zmian w wersji 1.18.0 stwierdza, że szyfrowanie nie spowalnia już transferów i zostało ponownie włączone na urządzeniach, na których wcześniej je wyłączono. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Nie ma więc powodu, by je wyłączać.

Weryfikacja urządzenia. W szczegółach urządzenia dostępna jest pozycja „Zweryfikuj”, która pokazuje zestaw ikon oraz tekst i zadaje pytanie: „Czy na drugim urządzeniu wygląda tak samo?” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) To sposób na sprawdzenie, czy po drugiej stronie stoi urządzenie, o które chodzi, a nie inne o podobnym aliasie - pod warunkiem że rzeczywiście porówna się oba ekrany, mając drugie urządzenie w ręku. Przy wysyłaniu czegokolwiek wrażliwego w sieci z wieloma urządzeniami warto z tego skorzystać, ponieważ sam alias jest tylko etykietą i nic nie gwarantuje.

Ulubione. Urządzenie można dodać do ulubionych, nadając mu własną nazwę oraz zapisując adres IP i port. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Ulubione mają dwie konsekwencje: są odpytywane bezpośrednio, co ratuje sytuację, gdy automatyczne wykrywanie zawodzi, (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) i mogą być automatycznie akceptowane, jeśli włączony jest odpowiedni tryb szybkiego zapisu. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Lista ulubionych powinna zatem zawierać wyłącznie własne urządzenia.

PIN. Kod PIN można wymusić zarówno przy odbiorze plików, jak i przy udostępnianiu przez link. (LocalSend - Changelog) Nadawca musi go wtedy podać, a po kilku nieudanych próbach aplikacja odmawia dalszych, pokazując „Zbyt wiele prób”. (LocalSend Protocol v2.2 - dokumentacja protokołu) (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Jest to najprostszy sposób, by przypadkowy albo niechciany nadawca w tej samej sieci nie zdołał nic podrzucić.

Jak działa wykrywanie. Domyślną metodą jest multicast: przy starcie aplikacja rozgłasza w sieci swoją obecność, a pozostałe urządzenia odpowiadają. (LocalSend Protocol v2.2 - dokumentacja protokołu) Gdy multicast zawiedzie - a zdarza się to w wielu sieciach - przewidziany jest tryb zapasowy polegający na odpytaniu lokalnych adresów po kolei. (LocalSend Protocol v2.2 - dokumentacja protokołu) Stąd bierze się praktyczna rada: jeśli automatyczne wykrywanie nie działa, wpisanie adresu IP ręcznie zwykle działa, a dodanie takiego urządzenia do ulubionych rozwiązuje problem na przyszłość. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Izolacja w sieci. Jeżeli router ma włączoną izolację klientów, połączenia między urządzeniami są zabronione i żadna konfiguracja aplikacji tego nie obejdzie. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Nie pomaga tu ani zmiana portu, ani wpisanie adresu IP ręcznie, ani dodanie urządzenia do ulubionych: blokada działa na routerze, poniżej warstwy, na której cokolwiek ustawia LocalSend. Funkcja bywa domyślnie włączona zwłaszcza w sieciach gościnnych. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Jedynym rozwiązaniem jest przeniesienie obu urządzeń do sieci, w której izolacji nie ma - prostym testem jest przełączenie ich na główną sieć domową zamiast gościnnej i ponowna próba.

Udostępnianie przez link, czyli gdy druga strona nie ma aplikacji

Tryb „Udostępnij przez link” pozwala przekazać pliki komuś, kto nie ma zainstalowanego LocalSend: odbiorca otwiera link w przeglądarce i pobiera wybrane pliki. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Aplikacja uruchamia wtedy serwer i pokazuje adres do otwarcia, opcjonalnie z kodem QR. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Ten tryb ma jedno istotne ograniczenie, o którym trzeba wiedzieć. Dokumentacja projektu wyjaśnia, że przy udostępnianiu do przeglądarki używany jest nieszyfrowany protokół HTTP, ponieważ przeglądarki odrzucają certyfikaty samopodpisane. (LocalSend Protocol v2.2 - dokumentacja protokołu) Aplikacja pozwala włączyć w tym trybie szyfrowanie, ostrzegając wtedy: „LocalSend używa samopodpisanego certyfikatu. Musisz go zaakceptować w przeglądarce.” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Dostępne są też przełączniki „Automatycznie akceptuj żądania” oraz „Wymagaj kodu PIN”, a aplikacja pokazuje licznik oczekujących żądań. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Link działa tylko w obrębie sieci lokalnej i nie ma sensu udostępniać go na zewnątrz.

W przeciwną stronę działa „Odbierz przez link”. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Gałąź Apple: macOS i iPhone

Aplikacja jest dostępna na macOS i iOS, w obu przypadkach z App Store, a dla macOS dodatkowo przez Homebrew i instalator DMG. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Sam przepływ pracy jest ten sam: zakładki wysyłania i odbioru, wykrywanie w sieci lokalnej, akceptacja żądania po stronie odbiorcy.

Trzy różnice warto znać.

Uprawnienie do sieci lokalnej. Na urządzeniach Apple aplikacje muszą prosić o zgodę na wyszukiwanie i komunikację z urządzeniami w sieci lokalnej. Na iPhonie listę takich aplikacji przegląda się w Ustawienia > Prywatność i ochrona > Sieć lokalna, gdzie dostęp można włączyć lub wyłączyć dla każdej aplikacji z osobna. (Apple - Control access to hardware features on iPhone) Na Macu odpowiednie ustawienie znajduje się w Ustawienia systemowe > Prywatność i ochrona, w pozycji opisanej jako zezwolenie aplikacjom na wyszukiwanie i komunikację z urządzeniami w sieci lokalnej. (Apple - Change Privacy & Security settings on Mac) Dokumentacja LocalSend wymienia przełączenie tego uprawnienia jako jedno z rozwiązań, gdy urządzenie z macOS lub iOS nie jest widoczne. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Transfer w tle. Opis zmian w wersji 1.18.0 podaje wprost: na Androidzie przesyłanie danych jest kontynuowane, gdy aplikacja działa w tle lub ekran jest wyłączony, natomiast na iOS aplikacja musi pozostać na pierwszym planie. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Przy większych transferach z iPhone'a lepiej więc zostawić LocalSend na ekranie i nie blokować urządzenia.

Sandbox i uprawnienia do plików. Wersja dla macOS instalowana z instalatora DMG jest uruchamiana w piaskownicy. (LocalSend - Changelog) Skutkiem jest to, że dostęp do wybranych folderów wymaga zgody systemowej; odpowiednie przełączniki znajdują się w tej samej sekcji ustawień prywatności, w pozycjach dotyczących plików, folderów i zdjęć. (Apple - Change Privacy & Security settings on Mac)

Nazwy pozycji w menu systemów Apple bywają zależne od wersji systemu i języka interfejsu; powyżej podano nazwy zgodne z bieżącą dokumentacją Apple.

Najczęstsze problemy i ich rozwiązania

Urządzenie w ogóle nie widzi drugiego. Kolejność sprawdzania wynikająca z dokumentacji projektu i z komunikatów samej aplikacji:

  1. Oba urządzenia osiągalne w tej samej sieci lokalnej. Telefon na Wi-Fi, a nie na transmisji komórkowej; jeśli komputer korzysta z kabla, to z kabla wpiętego do tego samego routera. Sieć gościnna i sieć główna to dwie różne sieci. (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  2. Ta sama konfiguracja po obu stronach: port, adres multicast i szyfrowanie. (LocalSend - polskie tłumaczenie interfejsu (pl.json))
  3. Wyłączona izolacja klientów na routerze. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))
  4. Aktywny VPN. Jeżeli działa VPN, trzeba zezwolić w nim na ruch lokalny albo tymczasowo go wyłączyć, ponieważ część rozwiązań VPN domyślnie blokuje połączenia w sieci lokalnej. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))
  5. Ręczne wpisanie adresu IP odbiorcy przez „Wysyłanie ręczne”. Jeżeli to zadziała, dodać urządzenie do ulubionych, żeby było odpytywane bezpośrednio. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Wysyłanie działa, odbieranie nie. To wskazuje na zaporę po stronie urządzenia odbierającego. Dokumentacja projektu podaje potrzebny zakres: ruch przychodzący TCP i UDP na porcie 53317. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Regułę lepiej ograniczyć możliwie wąsko: do samego programu LocalSend, do profilu prywatnego zapory i - jeśli okno reguły na to pozwala - do adresów własnej podsieci lokalnej, a nie dowolnego adresu zdalnego. Są dwie drogi i różnią się bardziej, niż sugeruje wygląd przycisku.

Pierwsza to strona „Rozwiązywanie problemów” w aplikacji z przyciskiem „Napraw automatycznie”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Kod tej strony pokazuje, co przycisk robi na Windows: uruchamia z uprawnieniami administratora dwa polecenia netsh advfirewall firewall add rule, które dodają reguły przychodzące o nazwie „LocalSend”, jedną dla TCP i jedną dla UDP, na porcie z ustawień aplikacji, czyli domyślnie 53317. (LocalSend - kod strony „Rozwiązywanie problemów” (troubleshoot_page.dart)) Polecenia nie wskazują programu, profilu ani adresów zdalnych, a wtedy netsh przyjmuje wartości domyślne: reguła obowiązuje we wszystkich profilach, także publicznym, dopasowuje ruch do dowolnego programu nasłuchującego na tym porcie i z dowolnego adresu zdalnego. (Microsoft Learn - Netsh AdvFirewall Firewall Commands) Aplikacja nie wyświetla przed tą operacją żadnego własnego ostrzeżenia; jedyne, co widać, to systemowy monit o podniesienie uprawnień. (LocalSend - kod strony „Rozwiązywanie problemów” (troubleshoot_page.dart)) Dodane reguły są trwałe: zostają w zaporze także po odinstalowaniu aplikacji. Ta droga ma sens tylko na komputerze w zaufanej sieci domowej, który nie bywa w innych sieciach. Przycisk „Otwórz zaporę” to coś innego: na Windows uruchamia tylko konsolę zapory i sam niczego nie zmienia. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) (LocalSend - kod strony „Rozwiązywanie problemów” (troubleshoot_page.dart))

Druga droga to ręczna reguła w tej samej konsoli, czyli „Zapora Windows Defender z zabezpieczeniami zaawansowanymi”, otwieranej poleceniem wf.msc; do zmian potrzebne są uprawnienia administratora. (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)) Kreator wygląda tak: w okienku po lewej „Reguły ruchu przychodzącego”, potem „Nowa reguła”, a jako typ reguły „Niestandardowa” (w angielskiej wersji „Custom”), bo tylko wtedy kreator pokazuje wszystkie strony. (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)) Na stronie programu wybrać „Tę ścieżkę programu” i wskazać plik wykonywalny LocalSend. Na stronie protokołów i portów wybrać TCP i port lokalny 53317. Na stronie zakresu ograniczyć adresy zdalne do własnej podsieci. Na stronie akcji „Zezwalaj na połączenie”. Na stronie profilu zostawić zaznaczony wyłącznie profil prywatny. Reguła będzie miała zastosowanie tylko wtedy, gdy połączenie korzysta z profilu prywatnego. (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)) Przed testem upewnić się, że jest to własna, zaufana sieć domowa, i sprawdzić jej profil w Ustawienia > Sieć i internet, zgodnie z opisem w sekcji „Windows nie jest widoczny dla innych”. Windows 11 domyślnie ustawia nowe połączenie jako publiczne (Microsoft - Essential network settings and tasks in Windows). Na koniec nadać nazwę, na przykład „LocalSend TCP”, i powtórzyć całość dla UDP (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)). Microsoft opisuje takie połączenie kryteriów programu i portu jako regułę, przy której tylko wskazany program odbiera ruch na tym porcie, a inne programy nie (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)). Polskie nazwy pozycji podano za polską, maszynowo tłumaczoną wersją dokumentacji Microsoftu i mogą nieznacznie różnić się od tych na ekranie (Microsoft Learn (PL, tłumaczenie maszynowe) - polskie nazwy pozycji konsoli zapory i kreatora reguł).

Niezależnie od drogi: zapory nie wyłącza się w całości i nie otwiera portu dla wszystkich profili. Jeżeli reguły z przycisku już istnieją, a komputer bywa poza domem, lepiej je usunąć (opis w sekcji o sprzątaniu) i zastąpić regułą ręczną.

Windows nie jest widoczny dla innych. Dokumentacja LocalSend zaleca skonfigurowanie sieci jako „prywatnej”, ponieważ Windows bywa bardziej restrykcyjny, gdy sieć jest oznaczona jako publiczna. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Microsoft opisuje, że przy pierwszym połączeniu z siecią w Windows 11 jest ona ustawiana jako publiczna i że w profilu publicznym komputer jest ukryty przed innymi urządzeniami w sieci, natomiast w profilu prywatnym jest dla nich wykrywalny. (Microsoft - Essential network settings and tasks in Windows)

Zmianę profilu na prywatny wykonuje się wyłącznie we własnej, zaufanej sieci domowej. Przy regule zapory ograniczonej do profilu prywatnego sprawdzenie i ewentualną zmianę profilu wykonuje się przed testem tej reguły. (Microsoft - Essential network settings and tasks in Windows) (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)) Przebieg: Ustawienia > Sieć i internet, następnie Wi-Fi i wybór sieci, z którą nawiązano połączenie, albo Ethernet dla połączenia przewodowego, a potem na ekranie sieci wybór pozycji w polu „Typ profilu sieciowego” (w cytowanej dokumentacji angielskiej „Network profile type”). (Microsoft - Essential network settings and tasks in Windows) Polskie nazwy pozycji Ustawień podano orientacyjnie i mogą różnić się od tych na ekranie. Microsoft podkreśla, że profil prywatny jest dla sieci, w której zna się i darzy zaufaniem ludzi oraz urządzenia. (Microsoft - Essential network settings and tasks in Windows) W sieci publicznej właściwym rozwiązaniem nie jest zmiana profilu, tylko rezygnacja z transferu w tym miejscu.

Transfer jest wolny. Dokumentacja wskazuje korzystanie z pasma 5 GHz, a dla urządzeń z Androidem odnotowuje znany problem z prędkością powiązany ze zgłoszeniem w bibliotece zewnętrznej. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Rada o wyłączeniu szyfrowania z tej samej tabeli jest starsza niż zmiany w wersji 1.18.0, w której odnotowano przyspieszenie transferów dla wolniejszych urządzeń odbierających. (LocalSend - Changelog) Realny rząd wielkości prędkości zależy od jakości sieci i sprzętu, więc jedyną sensowną metodą oceny jest własny pomiar: przesłanie tego samego pliku o znanym rozmiarze i odczytanie wartości z pola „Prędkość” na ekranie postępu. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Punkt odniesienia najlepiej zrobić raz, w spokojnej sieci, i do niego wracać po każdej zmianie.

Nie można otworzyć odebranego pliku. Aplikacja pokazuje wtedy komunikat: „Nie można otworzyć »«. Czy ten plik został przeniesiony, zmieniono mu nazwę lub usunięto?” (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Wpis w historii przechowuje ścieżkę, a nie kopię pliku, więc po przeniesieniu materiału pozycja historii przestaje działać.

Nazwa pliku zostaje odrzucona. Aplikacja waliduje nazwy i zgłasza „Nazwa pliku nie może być pusta” albo „Nazwa pliku zawiera nieprawidłowe znaki”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Nazwę odbieranego pliku można zmienić w trakcie akceptowania żądania.

Odbiorca jest zajęty. Komunikat „Odbiorca jest zajęty innym żądaniem” pojawia się, gdy urządzenie docelowe obsługuje właśnie inny transfer. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Wystarczy poczekać na jego zakończenie.

Starsze i nowsze wersje nie widzą się nawzajem. Jeżeli w domu są urządzenia z różnymi wydaniami LocalSend i wykrywanie zachowuje się dziwnie, pierwszym krokiem jest zaktualizowanie wszystkich do tej samej, aktualnej wersji; opisy wydań odnotowują naprawy zgodności między gałęziami. (LocalSend v1.18.2 - informacje o wydaniu)

Sprzątanie i cofnięcie zmian

Wyczyszczenie śladów w aplikacji. Historię odbioru usuwa się przyciskiem „Usuń historię”, a aplikacja prosi o potwierdzenie pytaniem „Czy na pewno chcesz usunąć całą historię?”. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Usunięcie wpisu z historii nie usuwa samego pliku z dysku; do tego służy zwykły menedżer plików. Ulubione urządzenia usuwa się pojedynczo, z potwierdzeniem. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Wyłączenie automatyzmów. Przed oddaniem komputera komuś innemu warto wyłączyć „Szybki zapis”, sprawdzić stan „Szybki zapis dla »Ulubionych«” i wyłączyć „Autostart po zalogowaniu”, jeśli był włączony. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Odinstalowanie w Windows. Jeżeli instalacja przebiegała przez Winget, aplikację usuwa polecenie winget uninstall --id LocalSend.LocalSend -e; identyfikator pochodzi z manifestu pakietu. (Manifest LocalSend w repozytorium winget-pkgs) Można też skorzystać ze zwykłej listy zainstalowanych aplikacji w ustawieniach systemu. Po odinstalowaniu trzeba zajrzeć do zapory: reguły przychodzące o nazwie „LocalSend” dodane przyciskiem „Napraw automatycznie” nie znikają razem z aplikacją. (LocalSend - kod strony „Rozwiązywanie problemów” (troubleshoot_page.dart)) W konsoli wf.msc, w „Reguły ruchu przychodzącego”, będą dwie takie pozycje, TCP i UDP; obie usunąć. (Microsoft Learn - Configure Firewall Rules (konsola Windows Firewall with Advanced Security)) To samo dotyczy reguł utworzonych ręcznie, pod nazwą nadaną w kreatorze. Z wiersza polecenia uruchomionego jako administrator robi to netsh advfirewall firewall delete rule name="LocalSend", które usuwa wszystkie reguły o dokładnie tej nazwie. (Microsoft Learn - Netsh AdvFirewall Firewall Commands) Przy wariancie przenośnym wystarczy skasować katalog z plikiem wykonywalnym; jeśli utworzono settings.json obok niego, ustawienia znikną razem z katalogiem. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Odinstalowanie na telefonie. Standardowe usunięcie aplikacji przez menedżera aplikacji systemu. Pliki już odebrane pozostaną w folderze pobierania lub w galerii, zależnie od ustawień; jeśli mają zniknąć, trzeba je usunąć osobno.

Żadna z powyższych czynności nie kasuje przesłanych plików. Odinstalowanie LocalSend usuwa aplikację i jej ustawienia, a nie materiały, które zdążyły dotrzeć - te leżą tam, gdzie zapisał je odbiorca, i pozostają nietknięte. Po stronie nadawcy oryginały nie są w ogóle ruszane: LocalSend kopiuje pliki, nie przenosi ich. Żaden z tych kroków nie usuwa też danych z chmury, ponieważ LocalSend niczego do chmury nie wysyła. (LocalSend - strona główna i FAQ) (LocalSend - Privacy Policy)

Kilka pytań, które wracają

Czy do działania potrzebny jest internet? Nie. Dokumentacja stwierdza, że aplikacja korzysta z lokalnej sieci Wi-Fi, a dane nie opuszczają tej sieci. (LocalSend - strona główna i FAQ) Router musi działać jako sieć lokalna, ale połączenie z internetem nie jest do transferu potrzebne.

Czy komputer i telefon muszą być w tej samej sieci Wi-Fi? Muszą być osiągalne w tej samej sieci lokalnej, co nie znaczy „na tym samym Wi-Fi”. Komputer podłączony kablem Ethernet i telefon na Wi-Fi tego samego routera spełniają warunek. Nie spełniają go dwa urządzenia rozdzielone siecią gościnną ani telefon na transmisji komórkowej. To najczęstsza przyczyna niepowodzeń, a aplikacja przypomina o niej przy wysyłaniu. (LocalSend - polskie tłumaczenie interfejsu (pl.json))

Czy aplikacja aktualizuje się sama? Nie, aplikacja nie ma własnego mechanizmu automatycznej aktualizacji. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Na telefonie zajmuje się tym sklep. Na Windows trzeba samodzielnie uruchamiać aktualizację pakietów w menedżerze albo pobierać nowe wydanie ręcznie. Aktualizowanie ma znaczenie także z powodów bezpieczeństwa: w kolejnych wydaniach naprawiano między innymi podatność przy zapisywaniu plików oraz zmieniono zachowanie wobec przekierowań wysyłanych przez inne urządzenia. (LocalSend - Changelog) (LocalSend v1.18.2 - informacje o wydaniu)

Czy jest wersja bez interfejsu graficznego? Tak, projekt udostępnia klienta wiersza poleceń. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Polecenie localsend-cli send przyjmuje pliki i katalogi i otwiera listę wykrytych urządzeń; odbiorcę można też wskazać wprost aliasem albo adresem IP przy pomocy parametru --to. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI)) Dla początkującego nie jest to potrzebne, ale bywa przydatne do skryptów.

Czy można przesłać cały folder? Tak. Changelog potwierdza udostępnianie folderów od wersji 1.9.0 i uwzględnianie samego wybranego folderu od 1.9.1. (LocalSend - Changelog) Dokumentacja CLI opisuje rekurencyjne zbieranie katalogów i zachowanie ich nazw oraz zagnieżdżonych ścieżek po stronie odbiorcy; według tej dokumentacji puste katalogi nie są przesyłane. (localsend/localsend - README (Setup, Download, Troubleshooting, CLI))

Na koniec: skąd wzięte są nazwy opcji

Nazwy opcji podano za polskim tłumaczeniem interfejsu utrzymywanym w repozytorium projektu; w innych wersjach układ ekranów może się różnić, a część ustawień siedzi w sekcji „Zaawansowane ustawienia”, którą trzeba najpierw rozwinąć. (LocalSend - polskie tłumaczenie interfejsu (pl.json)) Procedury opisano na podstawie dokumentacji projektu oraz dokumentacji Microsoftu i Apple, a zachowanie przycisku „Napraw automatycznie” za kodem źródłowym aplikacji; bez własnych pomiarów prędkości i prób na konkretnych egzemplarzach urządzeń.

Źródła

Komentarze (0)

Nikt jeszcze nic nie napisał. Bądź pierwszy.

Komentarze są moderowane. Pojawi się po zatwierdzeniu. Maks. 2 linki.

Czytaj dalej

Warsztat · poradnik

Jak bezpiecznie odłączyć osobisty OneDrive w Windows i zachować lokalne oryginały

8 września 2026
Warsztat · poradnik

Jellyfin na Windows: własny serwer multimediów w sieci domowej

8 września 2026
Warsztat · poradnik

Stary ThinkPad jako domowy serwer: Proxmox krok po kroku, bez obietnic

26 sierpnia 2026
AI · poradnik

Lokalna transkrypcja polskiego audio na Windows: Buzz i modele Whisper krok po kroku

8 września 2026