3 cose che vorrei che Apple sistemasse nell’API Screen Time

Quello in cui mi sono imbattuto sviluppando la stessa app per bloccare le app su iPhone e Android. Di Thomas Willheim · 30 settembre 2026

Sviluppo HonorFit, un’app per bloccare le app in cui il tempo schermo te lo guadagni facendo flessioni (sulla parola, senza fotocamera). È la stessa app su iPhone e Android, stessa idea, e per la maggior parte stesso codice. E sinceramente? La versione Android è più comoda da usare.

Non perché Android sia più bravo a bloccare le app. Sulla parte del blocco, l’API Screen Time di iOS è davvero solida. È perché iOS ti mette paletti su tre cose precise, e nessuna sembra esserci per proteggere gli utenti. Ecco quindi la mia lista, con quello che chiederei ad Apple. Ho cercato di limitarmi a cose che non costerebbero un briciolo di privacy a nessuno.

(Se ti interessa la versione tecnica, con tutti i dettagli su come si sviluppa con questa API, l’ho scritta a parte: quello che la documentazione di Apple non dice.)

1. Puoi avere una sola app di Tempo di utilizzo alla volta

Mettiamo che usi già Brick, Opal o one sec e voglia provare anche HonorFit. Su iPhone non puoi. Quando la seconda app chiede l’accesso a Tempo di utilizzo, iOS non mostra nemmeno la richiesta di autorizzazione. Restituisce solo un errore che dice che Family Controls è disponibile per una sola applicazione alla volta. Quell’errore l’ho visto con i miei occhi, e ci stanno sbattendo contro anche altri sviluppatori.

Per cambiare app devi andare in Impostazioni › Tempo di utilizzo › App con accesso a Tempo di utilizzo, disattivare l’altra app e a volte riavviare il telefono. Adesso HonorFit riconosce l’errore e guida le persone passo passo, perché il messaggio di errore così com’è non dice niente a una persona normale.

Avviso di HonorFit su iPhone: un’altra app sta usando Tempo di utilizzo. iOS permette a una sola app alla volta di controllare Tempo di utilizzo, con i passaggi per disattivare l’altra app in Impostazioni
Cosa vedono gli utenti iPhone in HonorFit quando un’altra app ha già l’accesso a Tempo di utilizzo. iOS di suo passa all’app solo un errore, quindi la spiegazione ce la mettiamo noi.

La cosa strana è questa: quando Apple ha presentato questo tipo di autorizzazione alla WWDC22, ha detto che, a differenza dell’autorizzazione per il controllo parentale, l’autorizzazione individuale può essere usata da un numero qualsiasi di app sullo stesso dispositivo. Oggi non funziona così, e non sono riuscito a trovarlo documentato da nessuna parte.

Perché non è nell’interesse degli utenti: la gente combina strumenti diversi. Qualcuno potrebbe usare un Brick per le sessioni di concentrazione serie al lavoro e HonorFit per guadagnarsi lo scroll della sera. Apple ha già una regola per combinare le restrizioni: quando più ManagedSettingsStore impostano la stessa cosa, come dice Apple, "the most restrictive setting always wins" (vince sempre l’impostazione più restrittiva). Fare lo stesso tra app diverse permetterebbe di usarle entrambe, e in quel modo un telefono può solo finire più bloccato, mai meno.

Cosa chiederei: lasciare che più di un’app abbia l’autorizzazione individuale a Tempo di utilizzo, come descritto alla WWDC22, e unire i loro shield con la stessa regola del "vince il più restrittivo". Se c’è un motivo vero per il limite, documentarlo e dare alle app un codice di errore come si deve, così possono spiegarlo.

2. Il selettore delle app è scomodo, e le app non possono personalizzarlo

Su iPhone, per scegliere quali app bloccare si usa il FamilyActivityPicker di Apple. È un pannello di sistema che l’app non può modificare, a parte una riga di testo in cima e una in fondo. Si apre su un elenco di categorie (Social, Giochi, Intrattenimento...) e devi entrare in una categoria per trovare le app vere e proprie. Su Android l’elenco lo costruisco io, quindi HonorFit mostra le app installate ordinate in base a quanto hai usato ciascuna nelle ultime 24 ore.

Il selettore delle app di Tempo di utilizzo su iOS: un elenco di categorie di app, con Salute e fitness aperta per mostrare le sue app
iPhone: il selettore di Apple. Prima le categorie, nessun dato di utilizzo, uguale per tutte le app.
Il selettore delle app di HonorFit su Android: app elencate con il tempo di utilizzo delle ultime 24 ore, prima le più usate
Android: l’elenco di HonorFit, ordinato per tempo di utilizzo, così le app peggiori sono proprio in cima.

Di quello di iOS mi danno fastidio due cose:

Questo non costerebbe niente in termini di privacy. Il selettore lo disegna iOS in un suo processo separato. L’app non vede mai cosa c’è dentro, ma solo dei token opachi per quello che hai scelto. HonorFit non può letteralmente sapere quali app hai scelto. Quindi iOS potrebbe mostrare i tempi di utilizzo direttamente nel selettore, e l’app continuerebbe a non sapere nulla. Apple fa già qualcosa di simile con le estensioni DeviceActivityReport, che mostrano il tuo utilizzo dentro una sandbox che l’app non può leggere.

Cosa chiederei:
  1. Un’opzione del selettore per scegliere categorie intere oppure solo app, così un’app per bloccare le app può offrire un elenco di sole app senza selezioni di categorie per sbaglio (e nascondere i siti web se non li usa).
  2. Un’opzione per ordinare per tempo di utilizzo misurato, e mostrarlo, accanto a ogni app, disegnato da iOS così che l’app non veda mai i numeri.

3. Non puoi vedere un conto alla rovescia preciso del tempo che ti resta

In HonorFit il tempo guadagnato scende solo mentre sei davvero dentro un’app bloccata. Quindi la cosa ovvia da mostrare è un conto alla rovescia: "mancano 12:34", che scorre mentre scrolli e si ferma quando esci.

Su Android è facile. Il servizio in background di HonorFit controlla ogni secondo quale app è sullo schermo, e la notifica usa il timer con conto alla rovescia integrato in Android, quindi la tendina delle notifiche lo ridisegna da sola ogni secondo. Abbassi la tendina e vedi esattamente quanto tempo ti resta, al secondo.

Su iPhone non si può, ed ecco perché:

Così gli utenti iPhone hanno una stima approssimativa, mentre quelli Android hanno il numero reale.

Cosa chiederei: permettere a un evento DeviceActivity di pilotare un conto alla rovescia disegnato da iOS stesso: in una notifica, in un’Attività live o nello shield, che scorra solo mentre le app monitorate sono sullo schermo. iOS tiene già traccia di quell’utilizzo al secondo, quindi potrebbe mostrare il tempo senza consegnare all’app niente di nuovo. Anche delle semplici callback "app bloccata aperta / chiusa" all’estensione di monitoraggio risolverebbero quasi tutto.

Tutto qui

Per essere onesti con Apple, il modello di privacy qui è davvero buono. L’app non scopre mai cosa hai bloccato né quanto lo usi, e mi dispiacerebbe se cambiasse. Nessuna delle tre cose qui sopra lo cambierebbe. Permetterebbero solo alle app per iPhone di essere utili quanto lo sono già le versioni Android.

Se anche tu sviluppi con Screen Time e vuoi una di queste cose, segnalalo in Assistente Feedback. Da quello che ho capito, è con le segnalazioni doppie che le cose vengono notate. E se vuoi solo provare l’app, HonorFit è gratis su iPhone e Android. Magari a qualcuno di voi piacerà!

Continua a leggere