Ho un'app con accesso facoltativo in cui alcune funzionalità richiedono l'accesso dell'utente.
Quando si verifica se l'utente è connesso utilizzo un framework che esegue una funzione asincrona che richiede un token di accesso dal portachiavi o dal nostro server (a seconda che il token abbia bisogno di aggiornamento) con un blocco di completamento che ci dice cosa fare con quell'informazione. Qual è la migliore pratica per usare una funzione come questa?
- Verifica se l'utente è connesso quando apre l'app (o la porta in primo piano) e imposta lo stato di accesso su una bandiera globale
- Verifica se l'utente è loggato quando un viewController che potrebbe richiedere l'autenticazione carica e lo imposta su un flag locale
- Chiama direttamente la funzione framework quando è necessario
Il primo approccio che temo sarà inaccurato e potrebbe richiedere l'archiviazione degli accessKey dell'utente in una variabile globale. Il terzo approccio che l'utente dovrà attendere fino al completamento della nostra richiesta di token.