Tôi cần đảm bảo rằng ứng dụng của tôi nhận được thời gian chính xác, không phải thời gian do người dùng đặt trong cài đặt.Làm cách nào để có được thời gian thực trong iPhone chứ không phải thời gian do người dùng đặt trong Cài đặt?
Ví dụ: khi người dùng khởi động ứng dụng, tôi muốn nhận dấu thời gian. Người dùng sẽ thấy thời gian trôi qua trên bộ đếm thời gian trên màn hình được cập nhật mỗi giây. Khi người dùng thoát khỏi ứng dụng và sau một thời gian khởi động lại ứng dụng, bộ hẹn giờ sẽ chỉ nhận được thời gian hiện tại và so sánh nó với dấu thời gian ban đầu được giữ lại. Về cơ bản, giống như đồng hồ bấm giờ trong Clock.App trên iPhone.
Bây giờ vấn đề với clock.app là nếu người dùng đi và tiến bộ thời gian trong Cài đặt một giờ, điều này sẽ ảnh hưởng đến bộ hẹn giờ. Rõ ràng là tôi không muốn điều đó, bởi vì trong ứng dụng của tôi, đó sẽ là gian lận.
Tôi cần có nguồn thời gian đáng tin cậy hơn để so sánh.
Tôi có thể lấy thời gian từ internet. Nhưng vấn đề là tôi cần kết nối internet, vì vậy chỉ hoạt động nếu có kết nối internet. Ứng dụng của tôi cần làm việc ngoại tuyến tốt hơn.
Có loại đồng hồ nội bộ nào tôi có thể truy cập không?
Có cách nào để kiểm tra xem người dùng đã thay đổi ngày trong Cài đặt chưa?
Bất kỳ ý tưởng nào khác?
Cảm ơn
tôi vô tình thời gian thực ... là xấu? –
Bạn có thể nhận thời gian từ GPS không? – Maxm007
Bạn sẽ cần phải có thời gian từ một số nguồn bên ngoài (NIST, GPS, hệ thống điện thoại di động, thậm chí bằng gói sniffing cho lưu lượng truy cập của người khác có dữ liệu phù hợp). OTOH, nếu bạn không tin tưởng người dùng, bạn thậm chí không nên làm điều này trên hệ thống của khách hàng. – BCS