Per facile intendo facile da implementare nel codice.
Per affidabilità intendo che non dipende da fonti che potrebbero fallire in base alle quali non esiste un buon controllo.
Per sicurezza intendo che non può essere aggirato o che, se potesse essere risolto, sarebbe piuttosto complicato.
La soluzione migliore a cui riesco a pensare al momento è cercare di verificare che l'utente abbia la data e l'ora automatiche e che il fuso orario automatico sia abilitato. Ho pensato che questo potesse essere risolto abilitando la modalità volo, o forse qualche altra opzione, ma almeno nel mio smartphone, ritorna alla data corretta. Indovina che ci sono alcune cose su come ottenere la data nei telefoni che non capisco, comunque non posso essere sicuro che funzioni per tutti gli smartphone.
Conosco altri metodi come l'utilizzo di alcuni server NTP, ma penso che ciò aggiungerebbe complessità non necessaria e meno affidabilità.
Mi piacerebbe ricevere suggerimenti su quale sarebbe un buon modo per farlo.
PS: sto modificando per richiesta.
La mia app consente di eseguire una determinata azione nell'app solo una volta alla settimana.
Non è qualcosa di importante quello che succede se l'utente riesce a ingannare l'app facendola credere che sia un'altra data, non mi interessa molto forse un 5% di utenti che inducono l'app a credere che sia un'altra data, ma affinché ciò avvenga, almeno tutti i modi banali in cui il recupero della data potrebbe essere risolto non dovrebbero essere consentiti.