Krótka wersja:Synchronizacja urządzeń z Androidem przez czas GPS?
Problem: Potrzebuję kilku urządzeń Android zrobić coś dokładnie w tym samym czasie (w ciągu około 100 milisekund). Na przykład chcę, aby wszystkie urządzenia odtwarzały określony dźwięk w określonym wcześniej momencie.
Pytanie: Czy mogę użyć czasu GPS, aby upewnić się, że zegary urządzeń są zsynchronizowane?
Dłuższa wersja:
Kilka osób posiadających urządzenia Android są w tym samym miejscu (na zewnątrz jakiegoś konkretnego wydarzenia sportowego). Wszystkie urządzenia powinny sygnalizować określone zdarzenia dokładnie w tym samym czasie. (Która godzina zostanie ustalona przed rozdaniem i nie jest ważne, aby robili to dokładnie w tym samym czasie, o ile robią to w tym samym czasie). FWIW: te wydarzenia pomogą ludziom rozpocząć aktywność sportową w tym samym czasie.
Oto założenia mogę zrobić:
- Nie mogą lub nie mogą być zasięg komórkowy. (Jest na zewnątrz i może być daleko od obszarów miejskich).
- Urządzenia mogą być podłączone do Internetu lub mogą nie być podłączone. (Niektóre osoby mogą nie mieć abonamentu danych)
- Urządzenia mogą ze sobą rozmawiać. Jeśli urządzenia nie są podłączone do Internetu, będą połączone za pośrednictwem Wi-Fi (choć w Wifi może nie być bramy internetowej).
- Urządzenia są na zewnątrz (a nie wewnątrz budynków). (To dobrze, oznacza to, że wszystkie urządzenia mogą uzyskać naprawę GPS).
- Urządzenia są fizycznie blisko siebie (tj. W obrębie 300 m2). (Nie wiem, czy to ważne)
Nie mogę korzystać z wewnętrznego zegara, aby wiedzieć, kiedy grać zdarzeń: użytkownicy mogą ręcznie zmienić czas i nawet jeśli urządzenie jest ustawione, aby uzyskać czas od sieci komórkowej, że sieć może nie podać dokładnego czasu. Dwa urządzenia mogą być rezerwowane w różnych sieciach, więc ich czas może nie być zsynchronizowany bardzo dobrze.
Podczas uruchamiania aplikacji każde urządzenie może poprosić o naprawę GPS i zapisać różnicę między czasem GPS a jego zegarem wewnętrznym. Teraz mistrz może ogłaszać zdarzenia w oparciu o ten czas GPS (używając wewnętrznego zegara i odejmując przesunięcie, które zostało wcześniej zapisane).
Czy będzie to wystarczająco dokładne i wiarygodne?
Dziękujemy wcześniej, Andreas Leitner
można używać aplikacji Czas GPS z rynku https://market.android.com/details?id=net.sourcewalker.gpstime – andreasg
To świetny pomysł. Mogę użyć tej aplikacji, aby wypróbować, czy działa. Ostatecznie chciałbym jednak zbudować tę funkcjonalność w mojej aplikacji. Nie chcę prosić moich użytkowników o zainstalowanie innej aplikacji (nawet jeśli jej nie potrzebują), a nawet bardziej problematycznej, która wymaga uprawnień administratora. – user1057534
Witam, dążę do tego samego. Czy kiedykolwiek byłeś w stanie to osiągnąć? –