← Tutti gli articoli

Un'app che blocca le app può vedere quali app usi sull'iPhone?

Su un iPhone, un’app di blocco costruita sui framework Screen Time di Apple non può vedere quali app hai scelto. Non per una questione di policy ma di architettura: il selettore che tocchi lo disegna iOS, e quello che l’app riceve indietro è un insieme di token opachi, riferimenti sigillati senza nome, senza identificativo e senza icona dentro. L’app può restituire un token al sistema per alzare uno schermo. Non può aprirlo. E non riceve mai il tuo utilizzo per singola app. È una delle rare affermazioni sulla privacy che non devi prendere sulla fiducia, e vale la pena capirla prima di installare qualsiasi cosa.

Schermata delle impostazioni di iPhone con le opzioni di Tempo di utilizzo

Cosa succede davvero quando tocchi «scegli le app» in un blocca-app?

Quasi niente di quello che ti aspetteresti.

Ogni blocca-app serio per iPhone è costruito su tre framework di Apple: FamilyControls per il permesso e la selezione, ManagedSettings per lo schermo e DeviceActivity per programmazioni e soglie. Il flusso è questo:

  1. L’app chiede l’autorizzazione a «Tempo di utilizzo». La approvi con Face ID o con il codice: una sola concessione visibile.
  2. L’app presenta un selettore. Il punto cruciale è che quel selettore non lo disegna l’app: è una vista di sistema. L’elenco delle tue app lo compone iOS dietro un confine che l’app di terze parti non può attraversare con lo sguardo. Lo sviluppatore fornisce la cornice e nient’altro di ciò che c’è dentro.
  3. Fai la tua selezione e chiudi il selettore. Quello che l’app riceve è una FamilyActivitySelection: un sacchetto di token.

Il terzo passaggio è dove l’intuizione si rompe. Sembra di aver consegnato un elenco a un’app. Non è così. Hai consegnato un elenco a iOS, e iOS ha consegnato all’app una serie di scontrini.

Cos’è un token opaco, detto in parole semplici?

Pensa allo scontrino del guardaroba. Corrisponde esattamente a un cappotto e ti permette di agire su quel cappotto: restituisci il tagliando e il cappotto arriva. Ma il tagliando non dice niente sul cappotto: né il colore, né la marca, né di chi è.

Un ApplicationToken funziona allo stesso modo. L’app può passarlo a ManagedSettings e dire scherma questo, passarlo a DeviceActivity e dire avvisami quando supera i quindici minuti, contare quanti ne ha in mano e conservarlo per riapplicare lo stesso schermo domani. Non può trasformarlo in un nome, in un’icona, in un identificativo o in una cifra di utilizzo. I token sono anche circoscritti: la stessa app sul tuo telefono produce un token diverso dentro un altro blocca-app, quindi non possono essere usati per collegarti fra servizi diversi.

Ma il mio blocca-app mi mostra nomi e icone delle app: come fa?

È l’obiezione che convince quasi tutti che la promessa sulla privacy sia marketing, e la risposta è elegante. SwiftUI mette a disposizione una vista Label che accetta un token e mostra il nome e l’icona corretti sullo schermo, dentro una vista controllata dal sistema. I pixel compaiono nell’interfaccia dell’app; la stringa sottostante non entra mai nel codice dell’app, non può essere registrata in un log e non può essere mandata da nessuna parte.

Quindi tu vedi Instagram e il codice dello sviluppatore vede un token illeggibile che punta a Instagram. Le due cose sono vere insieme. È la differenza fra una finestra e una copia.

Cosa può vedere davvero un blocca-app e cosa non potrà mai vedere?

Può vedereNon potrà mai vedere
Che hai concesso l’autorizzazione a «Tempo di utilizzo»Quali app hai selezionato, per nome o identificativo
Quante app, categorie e domini hai sceltoL’icona o la categoria di una selezione specifica
Che una soglia che aveva registrato è stata superataI minuti esatti per app o uno storico per singola app
Che uno schermo è stato applicato o rimossoCosa hai fatto dentro un’app
Quello che scrivi dentro l’app stessa: obiettivi, note, impostazioniLa cronologia di navigazione, i messaggi o il traffico di rete

Il modello mentale giusto è che il blocca-app è cieco e ha in mano un interruttore. Sa che l’interruttore è stato azionato e più o meno quanto tempo si è accumulato su un contatore che aveva impostato lui. Non sa cosa c’è dall’altra parte del muro.

Perché i numeri di un’app di terze parti sono solo stime?

Discende dallo stesso progetto, ed è il contraltare onesto del beneficio sulla privacy. Un blocca-app non riceve un contatore di minuti in tempo reale. Registra soglie con DeviceActivity — avvisami quando le app selezionate arrivano a cinque minuti in questo intervallo — e iOS richiama l’app quando una viene superata, quindi l’utilizzo viene dedotto da quali soglie sono scattate. iOS misura inoltre l’utilizzo cumulativo lungo un intervallo, non seduta per seduta, quindi per un’app di terze parti non esiste proprio un concetto pulito di questa sessione.

Qualunque app per iPhone che mostri una precisione al secondo per singola app o sta usando l’estensione di resoconto di Apple, che gira sul dispositivo in una sandbox così stretta da non poter mandare quei dati da nessuna parte, oppure sta ottenendo quei numeri per una strada su cui vale la pena fare domande. I numeri approssimativi sono un sintomo di un buon modello di privacy, non un difetto.

Perché alcune app chiedono un profilo VPN o di configurazione?

Perché stanno facendo qualcosa che FamilyControls non può fare, ed è qui che il calcolo della fiducia cambia sul serio.

Profili VPN o di filtraggio dei contenuti. Bloccare siti web richiede di intercettare una richiesta del browser, e lo schermo applicato alle app da Apple non arriva dentro il traffico di Safari. Una configurazione VPN instrada la tua attività di rete attraverso un filtro che può ispezionare i domini che visiti. Gli strumenti multipiattaforma che coprono Windows, Android e iOS di solito la usano, perché i framework di Apple esistono solo sulle piattaforme di Apple. Funziona ed è legittimo, ma è una superficie enormemente più ampia: chi gestisce quel filtro può potenzialmente vedere dove vai.

Profili di configurazione o MDM. Sono payload di gestione dispositivi pensati per hardware aziendale o scolastico. A seconda del contenuto, un profilo può imporre restrizioni che l’utente non può rimuovere ed esporre moltissimo su un dispositivo. Un’app di consumo che chiede a un privato di installarne uno sta chiedendo qualcosa che non è mai stato progettato per quel rapporto.

Nessuno dei due è automaticamente sinistro: un prodotto di controllo parentale, o un blocca-app che deve coprire anche il portatile di lavoro, può non avere alternative. Ma sappi quale patto stai facendo: un blocca-app basato su FamilyControls è strutturalmente incapace di imparare granché su di te, mentre uno basato su VPN ti sta chiedendo di fidarti.

Un’avvertenza: questo è un articolo su iOS. Su Android i blocca-app si appoggiano di solito al servizio di accessibilità e a UsageStatsManager, che consegnano in chiaro i nomi dei pacchetti e l’utilizzo per singola app. La garanzia dei token opachi è una proprietà delle piattaforme Apple e non si trasferisce.

“Lavoro in ospedale e metà di quello che ho sul telefono è lavoro. Davo per scontato che ogni app di focus stesse costruendo di nascosto un profilo su di me, quindi non ne ho mai installata una. Quello che mi ha fatto cambiare idea è stato leggere come funziona davvero il selettore: l’app non può vedere la mia selezione perché iOS non gliela dà proprio. È un tipo di promessa diverso da un’informativa sulla privacy.” — Chiara, farmacista ospedaliera, 38

Come si valutano le promesse sulla privacy di un’app di questo tipo?

Una lista di controllo da cinque minuti, valida per qualsiasi app della categoria:

  1. Quali permessi chiede? La sola autorizzazione a «Tempo di utilizzo» è una concessione stretta e ben delimitata. Un profilo VPN, un profilo di configurazione, i permessi di accessibilità o l’accesso completo alla rete la allargano parecchio ciascuno. Chiediti cosa ti compra quel permesso in più.
  2. Il blocco richiede un account? Se devi creare un accesso prima di poter schermare anche una sola app, dello stato sta finendo da qualche parte. Può andare benissimo — la sincronizzazione lo richiede — ma è una scelta, non una necessità.
  3. Quanto sono precisi i suoi numeri? Su iOS, i grafici con i minuti esatti per singola app sono un segnale per guardare meglio, non una funzione da premiare.
  4. Leggi l’etichetta della privacy sull’App Store, in particolare «Dati collegati a te». Analisi e report di crash sono normali; dati di utilizzo legati a un’identità, o qualsiasi cosa sotto «Dati usati per tracciarti», sono un’altra faccenda.
  5. Controlla la policy sulle terze parti. Gli SDK pubblicitari e i partner di attribuzione sono la strada realistica attraverso cui i dati comportamentali escono anche da un’app costruita bene.
  6. Chiediti cosa succede se l’azienda sparisce. Un modello sul dispositivo degrada al fatto che l’app smette di funzionare. Un modello in cloud significa che la tua cronologia finisce dentro l’acquisizione di qualcun altro.

Come aiuta Unscrol?

Prima la risposta onesta: lo strumento più privato che hai sull’iPhone è quello che Apple ci mette già dentro. «Tempo di utilizzo», «Limitazioni app» e la «Pausa di utilizzo» non coinvolgono nessuna terza parte, non costano niente e tengono tutto dentro il sistema di Apple. Se una finestra di «Pausa di utilizzo» e un codice tenuto dal tuo partner risolvono il tuo problema, quella è la risposta giusta e puoi fermarti qui.

Unscrol è un’app per iPhone e Apple Watch per il caso in cui la schermata del limite di Apple ha smesso di cambiare qualcosa, costruita dentro il confine descritto sopra invece che intorno.

Pannello di blocco app di Unscrol con le programmazioni di oggi e le categorie bloccate Giochi, Intrattenimento e Social

Scegli due numeri, un totale giornaliero e un massimo per sessione, e iOS li fa rispettare entrambi: consumi un blocco di budget grande quanto una sessione e le app scelte si bloccano per 15 minuti; finisci l’intero budget giornaliero e si bloccano fino a domani. Uno Scudo programmabile copre finestre come il sonno o il lavoro, e spegnerlo a metà è lento apposta: un esercizio di respirazione e un’attesa, non un tocco.

Sulla privacy nello specifico, Unscrol richiede l’autorizzazione a «Tempo di utilizzo» e nient’altro. Nessuna VPN. Nessun profilo di configurazione. Il selettore che vedi è quello di sistema, e l’app riceve solo token opachi, quindi non può leggere quali app hai scelto, i loro nomi, le loro icone o il tuo utilizzo per singola app. Liste di blocco e dati di utilizzo vengono elaborati sul dispositivo da iOS e non arrivano mai ai server di Unscrol. Il compromesso è dichiarato apertamente dentro l’app: le cifre di utilizzo sono stime ricavate da soglie superate, non da un cronometro, perché è l’unico numero che questa architettura può produrre. Si scarica gratis; il livello premium opzionale aggiunge un’assicurazione della serie (Salva-serie) per un giorno saltato e cinque sfide in parallelo invece di una.

Domande frequenti

Un'app per il tempo di utilizzo può vedere quali app ho bloccato?

Su iOS no. Un blocca-app costruito sul framework FamilyControls di Apple non riceve mai l'identità delle app. Quando scegli le app, il selettore che stai toccando lo disegna il sistema e non l'app, e quello che torna indietro è un insieme di token opachi: riferimenti sigillati che l'app può restituire a iOS per applicare uno schermo, ma che non può decodificare in un nome, in un identificativo o in un'icona. L'app sa quante cose hai selezionato e nient'altro su cosa siano. Non è una promessa scritta in un'informativa: lo impone il sistema operativo.

Cos'è un token opaco nelle API Screen Time di Apple?

Un token opaco è un riferimento privo di significato che sta al posto di un'app, di un dominio o di una categoria che hai selezionato. Il framework FamilyControls di Apple li emette perché un'app di terze parti possa agire sulla tua selezione senza mai scoprire cosa contiene. Il token può essere restituito a iOS per schermare l'app o per impostare una soglia di utilizzo, e basta. I token sono anche circoscritti: la stessa app produce token diversi dentro app diverse, quindi non possono essere usati per collegarti fra un servizio e l'altro.

Perché alcune app per bloccare le app chiedono di installare un profilo VPN?

Di solito perché bloccano siti web, oppure perché funzionano anche su Windows e Android, dove i framework Screen Time di Apple non esistono. Instradare il traffico attraverso un filtro è l'unico modo per intercettare una richiesta del browser. È una tecnica legittima, ma è una concessione di fiducia molto più ampia di uno schermo applicato sul dispositivo: chi gestisce quel filtro può potenzialmente vedere i domini che richiedi. Lo stesso vale per qualunque app di consumo che ti chieda di installare un profilo di configurazione o di gestione, tecnologia nata per dispositivi aziendali.

Come capisco se un'app per il tempo di utilizzo è davvero privata?

Guarda cosa chiede e cosa ti mostra. Un'app che richiede solo l'autorizzazione a «Tempo di utilizzo» e non chiede mai una VPN, un profilo di configurazione o permessi di accessibilità è strutturalmente limitata in ciò che può imparare su di te. Verifica se serve un account per usare il blocco, e leggi l'etichetta della privacy sull'App Store, in particolare la voce «Dati collegati a te». Diffida dei grafici con i minuti precisi app per app su iOS: quel livello di dettaglio di solito significa che i dati passano da qualche parte dove il sistema operativo non li protegge.