Muszę się upewnić, że moja aplikacja pobiera prawidłowy czas, a nie czas ustawiony przez użytkownika w ustawieniach.Jak mogę uzyskać w czasie rzeczywistym iPhone'a, a nie czas ustawiony przez użytkownika w Ustawieniach?
Na przykład, gdy użytkownik uruchomi aplikację, chciałbym otrzymać znacznik czasu. Użytkownik będzie na bieżąco sprawdzać upływ czasu na zegarze na ekranie. Gdy użytkownik wyjdzie z aplikacji i po pewnym czasie uruchomi ponownie aplikację, licznik czasu uzyska aktualny czas i porówna go z oryginalnym znacznikiem czasowym, który zatrzymał. Zasadniczo, podobnie jak stoper w Clock.App na iPhone.
Teraz problem z clock.app polega na tym, że jeśli użytkownik pójdzie i zwiększy czas w Ustawieniach o godzinę, wpłynie to na czasomierz. Oczywiście nie chcę tego, ponieważ w mojej aplikacji byłoby to oszukiwanie.
Będę potrzebować bardziej wiarygodnego źródła czasu do porównania.
Mogę uzyskać czas z Internetu. Problem polega jednak na tym, że potrzebuję połączenia z Internetem, więc działa tylko wtedy, gdy jest połączenie internetowe. Moja aplikacja musi działać najlepiej w trybie offline.
Czy jest jakiś wewnętrzny zegar, do którego mogę uzyskać dostęp?
Czy istnieje sposób sprawdzenia, czy użytkownik zmienił datę w Ustawieniach?
Jakieś inne pomysły?
Dzięki
przypadkowo czasie rzeczywistym ... czy to źle? –
Czy byłoby możliwe uzyskanie czasu z GPS? – Maxm007
Musisz uzyskać czas z jakiegoś zewnętrznego źródła (NIST, GPS, system telefonii komórkowej, może nawet przez sniffowanie pakietów dla ruchu innych ludzi, który ma właściwe dane), jak każdy wewnętrzny zegar może być zmyty. OTOH, jeśli nie ufasz użytkownikowi, nie powinieneś nawet robić tego w systemie klienta. – BCS