Android · zbieranie danych offline · wersja 1.5.2

Telefon, który pracuje
jak prawdziwy przyrząd.

Signal Collector zapisuje na bieżąco dane z czujników, radia i sieci, do których telefon ma dostęp — prosto do telefonu, bez chmury i bez tego, żeby zmierzone dane opuszczały urządzenie.

Prawdziwe zrzuty · Pixel 10a

  1. Trwający pomiar z rozwiniętym pierścieniem

    Trwający pomiar. Pierścień pokazuje satelity, sieci i czujniki w miarę jak napływają.

  2. Wybór technologii do pomiaru

    Wybór tego, co się mierzy. Każde źródło to wiersz, który mówi, co zapisuje.

  3. Przyciski sterujące podczas trwającego pomiaru

    Start, zerowanie i stop, a nad nimi czas, dystans i liczba rekordów.

  4. Kondycja zbierania i panel eksportu

    Dół płyty: co robi każde źródło i plik, który opuszcza telefon.

  5. Menu ustawień otwarte z nagłówka

    Ustawienia: wysyłka na własny serwer, jednostki i to, co dzieje się po zatrzymaniu.

Lokalnie Room / SQLite w telefonie, nic nie wychodzi samo
Ciągle Zbiera dalej przy zablokowanym ekranie
Pod ręką Cztery widżety, kafelek w szybkich ustawieniach i szuflada
Eksport TXT albo GZIP, wybierany według rozmiaru

Test wewnętrzny

Następna wersja, zanim trafi do sklepu.

Każda kompilacja trafia najpierw do testu wewnętrznego, zanim pójdzie do produkcji. Dołącz kontem Google, na którym zalogowany jest telefon, a aktualizacja przyjdzie jak każda inna.

Jedna sesja.
Cały kontekst.

Każdy przypadek kończy się
plikiem.

Przyrządu pomiarowego nie sprzedaje się listą źródeł, tylko pytaniem, na które umie odpowiedzieć. Sześć z dwunastu sytuacji, pod które aplikacja powstała — za każdym razem jeden spacer, a na jego końcu plik.

01

Martwy punkt w sali konferencyjnej

Przejdź piętro z telefonem w kieszeni i przy każdych drzwiach powiedz notatkę. Wypada przepustowość sekunda po sekundzie, AP, na którym telefon naprawdę był, i pomieszczenie zamiast sporu dwóch działów.

02

Drive test bez busa

Obie karty SIM skanują, GPS co sekundę, telefon zablokowany na desce rozdzielczej. Każda zmiana technologii, Cell ID albo PCI zapisuje się jako zdarzenie, więc handovery wypadają z dokładnością do metra.

03

Pomiar tam, gdzie GPS nie daje nic

W magazynie niebo jest dachem. Oznacz każdą alejkę zdjęciem z celownika aplikacji i zbieraj AP, łącza MLO i odległości z RTT — mapa pokrycia, zanim kupi się pierwszy nowy AP.

04

Czujniki, które zgłaszają się same

Po budynku wiszą dziesiątki termometrów BLE i żaden nie jest sparowany. Przejdź obok, a ich temperatura, wilgotność i napięcie baterii przychodzą nazwane i w jednostkach SI, obok bajtów, z których powstały.

05

Dowód dla wynajmującego

Dziesięć minut chodzenia daje plik ze znacznikiem czasu, pozycją, siłą sygnału i zdjęciami pomieszczeń. „Zasięg jest wszędzie dobry” staje się twierdzeniem, które da się sprawdzić.

06

Klient, który nie chce chmury

Mierz jak zwykle i dostarczaj na własne S3, WebDAV albo SFTP — albo przekaż plik. Zdjęcia i notatki głosowe nigdy nie trafiają do galerii telefonu, więc NDA zostaje do podpisania.

Wszystkie dwanaście przypadków i czym się czyta dane

Pełny changelog

Praca, której można się
przyglądać.

Wersja 1.5.1 wysyła wszystkie dwanaście języków w każdej instalacji, pozwala zobaczyć przy pracy długi eksport albo Wyzeruj i dokłada luźny zeszyt na punkty, zdjęcia i testy robione bez trwającego pomiaru.

01

Języki, które naprawdę są

Google Play dawniej dostarczał tylko języki, które telefon miał przy instalacji, więc wybór języka aplikacji proponował czeski i pozostałe bez tekstów za nimi. Wszystkie dwanaście tłumaczeń instaluje się teraz zawsze.

02

Kometa na klawiszu

Pobierz, Udostępnij i Wyzeruj trwają przy dużym pomiarze od sekund do minut. Po krawędzi klawisza biegnie teraz kometa, ogon rośnie z gotową częścią, a żywy wiersz pod nią mówi, ile jest gotowe, jak długo to trwa i mniej więcej ile zostało. Wolne miejsce pokazuje się przed początkiem zapisu — pomarańczowo, gdy jest go mało, czerwono, gdy eksport by się nie zmieścił.

03

Luźny zeszyt

Punkty pomiarowe, zdjęcia, notatki głosowe, jednorazowy test internetu i cykl przepustowości Wi-Fi nie potrzebują już Start. Bez trwającego pomiaru idą do osobnego zapisu bez kolektorów, bez wake locka i bez odliczania od darmowej godziny — z własną kartą, własnym plikiem do udostępnienia i własnym Opróżnij.

04

Udostępnianie z ikony, elementy systemowe

Przytrzymaj ikonę aplikacji, gdy pomiar stoi, a Udostępnij jest tuż obok Start; otwiera aplikację i od razu uruchamia eksport. Przełączniki, pola tekstowe, wybory i komunikaty są teraz standardowymi elementami Androida — klawisze i przyrząd zostają, jak były.

Instalowana wyłącznie
przez Google Play.

Wersja1.5.2
PlatformaAndroid 12+
DostępnośćKażdy kraj, na który pozwala Play
Pobierz z Google Play
  1. 1

    Zainstaluj z Google Play — bez zaproszenia, bez listy testerów, bez czekania.

  2. 2

    Mierz do godziny rocznie, nic nie płacąc.

  3. 3

    Odblokuj nieograniczony pomiar z wnętrza aplikacji, gdy godzina przestanie wystarczać.

Google Play to jedyny kanał dystrybucji: podpisuje łańcuch aktualizacji i nigdzie nie ma bezpośredniego APK. Sama aplikacja do działania nie potrzebuje żadnego naszego konta ani żadnego naszego serwera.

Godzina rocznie
na zastanowienie.

Przyrządu terenowego nie da się ocenić po zrzutach ekranu, więc Signal Collector daje każdemu telefonowi godzinę czasu pomiaru rocznie — dość, żeby przejść trasę, popatrzeć, jak wypełnia się pierścień, i otworzyć eksport. Liczy się czas pomiaru, nie liczba sesji, więc można go wydać w kilku miejscach i w kilku dniach. Kiedy się skończy, odblokowanie jest jednorazowym zakupem w aplikacji w cenie Google Play dla twojego kraju: bez abonamentu, bez daty odnowienia, i działa na każdym telefonie zalogowanym na to samo konto.

1 godzinaczasu pomiaru za darmo, co roku od nowa
Jeden zakupi od tej pory bez ograniczeń, na każdym twoim telefonie
24 godzinyod recenzji do zakwalifikowanego zgłoszenia

Opinie przychodzą przez recenzję w Google Play; każda nowa jest podejmowana w ciągu doby, zamieniana na zgłoszenie i odpowiadana, a poprawki jadą z kolejną aktualizacją. Płatna aplikacja nie niesie reklam, analityki ani obcego SDK wewnątrz pomiaru — to cena płaci zamiast nich za rozwój.

Od czujników fizycznych
po sieci wokół ciebie.

Każde źródło można włączyć albo wyłączyć osobno przed pomiarem, a przy wybranych technologiach ustawić także interwał.

01

Sieć komórkowa

Komórka obsługująca i sąsiednie, parametry LTE/NR/3G/2G, zmiany rejestracji i eksperymentalne skanowanie aktywne.

02

GNSS i lokalizacja

GPS 1 Hz, satelity, surowe pomiary GNSS, zegar, AGC, komunikaty nawigacyjne, NMEA i informacje o antenie.

03

Wi‑Fi i RTT

Bieżące połączenie, punkty dostępowe w pobliżu, Wi‑Fi 7 MLO, możliwości oraz odległości RTT/FTM do obsługiwanych punktów dostępowych.

04

Bluetooth

Klasyczne wykrywanie i ładunek rozgłoszeń BLE, razem z danymi producenta i usługi.

05

Czujniki i hałas

Ruch, pole magnetyczne, ciśnienie, światło, zbliżenie, wektor obrotu i orientacyjny poziom dBFS bez zapisywania dźwięku.

06

Sieć i transfer

Próbki co sekundę rzeczywistego pobierania, wysyłania, RTT, jittera i przekroczeń czasu, 30-sekundowe zrywy przepustowości oraz jednoczesne przypięcie do konkretnej sieci Wi‑Fi i komórkowej.

07

SIM i eSIM

Slot, operator, MCC/MNC, roaming i to, która karta wiezie dane — same komórki nazywają nadajnik, nie tego, kto patrzył. Nie zapisuje się ani ICCID, ani EID: to trwałe identyfikatory abonamentu, które przeżyją nawet zmianę telefonu.

Czujnik, którego nie ma
w telefonie.

Telefon mierzy to, do czego sięgnie. Sonda na ścianie, miernik na kablu, odbiornik na dachu — te muszą wejść inaczej. Drogi są cztery, a pierwsza już działa.

01

Czujniki, które nadają · już działa

BTHome, Ruuvi, ATC i pvvx, telemetria Eddystone. Nie ma czego parować ani z czym się łączyć: czujnik wykrzykuje swój odczyt do pokoju, a skan, który i tak trwa, go słyszy. Temperatura, wilgotność, ciśnienie, CO₂, pyły, napięcie — nazwane, w jednostkach SI, w tym samym pliku co wszystko inne.

02

Profile Bluetooth LE · planowane

Environmental Sensing sam opisuje swoje pomiary, więc nawet miernik, o którym nikt nigdy nie słyszał, da się odczytać razem z jednostką. Obok stoją profile standardowe — bateria, termometr, położenie — i usługa Nordic UART, którą mówi układ zbudowany w domu.

03

Linia szeregowa na kablu · planowane

CDC-ACM, FTDI, CP210x, PL2303, CH340. Pięć rodzin układów pokrywa niemal wszystko, co wpina się w USB i nie jest dyskiem: płytki Arduino i ESP32, odbiorniki u-blox, analizatory widma, mierniki odpowiadające w SCPI.

04

Urządzenie w sieci lokalnej · planowane

Znalezione przez mDNS, czytane po HTTP albo jako zwykły strumień TCP. Zapytanie jest przywiązane do sieci Wi-Fi, żeby nie wyszło danymi komórkowymi i nie zgubiło się w drodze do urządzenia o pokój dalej.

Nic nie jest zgadywane. Odczyt, który sam czujnik oznaczył jako nieważny, zostaje pominięty, zamiast trafić do pliku jako liczba; zaszyfrowany payload zapisuje się jako zaszyfrowany, a nie odczytuje w zmyśloną wartość; a format, którego aplikacja nie zna, zostaje w pliku jako surowe bajty. Spis kluczy jest częścią słownika danych.

Klawisz, który nie wymaga
wcześniejszego otwarcia aplikacji.

Pomiar w terenie to jedna ręka na telefonie, a druga przy czymś innym. Każdy element sterowania, na którym zależy, ma więc swoje miejsce także poza aplikacją — i wysyła dokładnie to samo polecenie co ekran.

01

Pulpit pomiaru

Widżet, który uruchamia zapisany w nim zestaw źródeł i interwałów. W trakcie pomiaru mówi o tym, niesie jego liczby, a drugie dotknięcie pyta, zanim zatrzyma. Klawisz trzyma własną kopię tego, co uruchamia, więc późniejsza zmiana ustawienia wstępnego w aplikacji nie zmieni po cichu tego, co mierzy ekran główny.

02

Znacz punkt

Do czterech własnych etykiet obok siebie — drzwi, róg, okno to po jednym dotknięciu i od razu trafiają do punktu. Gdy nic nie działa, klawisz uruchamia pomiar i oznacza punkt za jednym razem.

03

Kafelek źródła

Jedno źródło jako jedna duża liczba: punkty dostępowe w zasięgu, satelity w fixie, głośność. Dotknięcie, gdy nic nie działa, uruchamia pomiar wyłącznie z tym źródłem.

04

Wykaz źródeł

Do sześciu źródeł, każde w jednym wierszu, w kolejności, w jakiej je wybrano — lista do przeczytania jednym spojrzeniem, nie do przeszukiwania.

05

Kafelek w szybkich ustawieniach

Start i stop z dowolnej aplikacji oraz na ekranie blokady. Mierzy tym, czym aplikacja mierzyła ostatnio. Na zabezpieczonej blokadzie prosi najpierw o odblokowanie telefonu: uruchamia się lokalizacja z mikrofonem.

06

Skróty pod ikoną

Długie przytrzymanie ikony proponuje Start, dopóki nic nie działa, oraz Stop wraz z oznaczeniem punktu, gdy coś już działa. Punkt zostaje oznaczony bez etykiety — etykiety są na klawiszu widżetu, gdzie jest na nie miejsce.

07

Powiadomienie

W trakcie pomiaru niesie czas trwania, liczbę rekordów i przebytą odległość, a pod nimi oznaczenie punktu i Stop. Start może zostać w szufladzie przez cały czas, gdy nic nie działa, żeby pomiar na raty nie oznaczał szukania aplikacji za każdym razem.

Klawisze przerysowuje sam pomiar, raz na pięć sekund — widżet nie może być świeższy niż aplikacja, która go karmi. Dlatego każdy klawisz niesie godzinę, na którą odczytano jego liczby; wyjątkiem jest stoper, ten tyka sam. Wszystkie ustawia się w jednym miejscu, Klawisze na ekranie głównym w menu ustawień, a opisuje je pomoc.

Dane z prawdziwego
telefonu.

Wszystko poniżej zmierzono na Google Pixel 10a z Androidem 16. W wersji 0.7.2 jeden pomiar w trzech odcinkach zebrał 87 597 rekordów: czas trwania rósł z 2:49 przez 7:21 do 8:12, numer pomiaru nigdy się nie zmienił, a ponad dwadzieścia minut przerw między odcinkami nie liczyło się do czasu trwania. Wartości dystansu pochodzą z dziewięciominutowej sesji wersji 0.7.1 na tym samym telefonie — filtr dystansu od tego czasu się nie zmienił.

429 mszumu GPS wyrzuconego przez filtr dystansu
0 mprzeszedł telefon, który nigdy się nie ruszył
9/9zrywów, których start łączy się z wynikiem

Pierwsze 274 ustalenia pozycji miały dokładność między 9 a 114 m. Zsumowanie odległości między sąsiednimi ustaleniami dałoby 429 m, albo 28 m po odfiltrowaniu zgrubnych; przesunięcie kotwicy poza próg dało zero. Telefon testowy nie miał karty SIM, więc komórkowa gałąź mapowania poprawnie zgłosiła sieć jako niedostępną.

Instalacja, zmiany
i kod źródłowy.

Repozytorium pozostaje prywatne. Zalogowani współpracownicy znajdą w nim kod źródłowy, otagowane wydania i sumy kontrolne APK.

Zmierzone dane nigdy nie opuszczają telefonu.

Aplikacja działa offline i nie zawiera żadnego SDK do analityki, reklam, atrybucji ani raportowania awarii — i żadne nie dojdzie. Każda biblioteka, z której aplikacja jest zbudowana, jest wymieniona w polityce prywatności, każda przypięta do dokładnej wersji, więc w środku nic się nie zmienia bez wydania, które to mówi. Opcjonalne ciągłe mapowanie jakości transferu korzysta z publicznych punktów Cloudflare Speedtest do małych testowych transferów HTTPS i okresowych zrywów; to nie jest pomiar maksymalnej prędkości internetu. Moduł jest domyślnie wyłączony. Jeśli kupisz odblokowanie, telefon opuszcza jedno zgłoszenie zakupu, w którym nie ma żadnych zmierzonych danych; opisuje je polityka prywatności. Eksport może zawierać wrażliwe dane lokalizacyjne i identyfikatory pobliskich sieci.

Od czujnika
do wiersza w pliku.

Każde źródło idzie własnym tempem. Próbka dostaje znacznik czasu i ostatnią znaną lokalizację, przechodzi przez nieblokującą kolejkę i trafia partiami do lokalnej bazy. Podkreślone klucze na schemacie prowadzą do słownika danych.

Schemat drogi danych: źródła, SampleSink, kolejka, writer, Room/SQLite, tętno i eksport

Ustawienia zbierania

Te same parametry, które aplikacja oferuje dla każdego źródła przed startem pomiaru. Zakresy i szacunek danych odpowiadają implementacji; zmiana od razu widać na schemacie powyżej.

ms

Zakres 10–1000 ms

ms

Zakres 100–60000 ms

s

Zakres 5–300 s

s

Zakres 5–60 s

s

Zakres 5–300 s

Mapowanie internetuSieć do pomiaru ciągłego

Przy obu wybranych działają równocześnie dwa osobne uchwyty Network Androida.

ms

Zakres 500–5000 ms

KiB

Zakres 1–1024 KiB

KiB

Zakres 1–256 KiB

s

Zakres 10–300 s

KiB

Zakres 64–10240 KiB

KiB

Zakres 8–2048 KiB

407 MBgórne oszacowanie danych zużytych na 30 minut mapowania
8 400próbek na minutę z siedmiu czujników
120próbek na minutę z mapowania internetu
20skanowań Wi-Fi i komórkowych na 10 minut

Oszacowanie to górna granica: na wolnym łączu próbka trwa dłużej, więc mieści się ich mniej w tym samym czasie i przesyła się mniej danych. To nie jest pomiar maksymalnej prędkości — dlaczego.

Changelog 1.0.0

Otwórz jako TXT ↗