Sobes.tech
Middle

Cosa sai della storia della memorizzazione dei file in Android?

sobes.tech AI

Risposta dell'AI

La storia dello storage dei file in Android ha attraversato diverse fasi chiave, riflettendo l'impegno nel migliorare la sicurezza, la privacy e la facilità di gestione dei dati.

Inizialmente, nelle prime versioni di Android, l'accesso al file system era relativamente libero. Le applicazioni potevano leggere e scrivere file praticamente ovunque sulla memoria esterna (scheda SD), utilizzando i permessi WRITE_EXTERNAL_STORAGE e READ_EXTERNAL_STORAGE. Questo creava problemi con l'organizzazione dei dati, conflitti tra applicazioni e sicurezza, poiché un'app poteva accedere ai dati di un'altra.

La situazione iniziò a cambiare con l'introduzione del concetto di sandbox per ogni applicazione. Ogni applicazione ricevette uno spazio privato per archiviare i propri dati (Context.getFilesDir(), Context.getCacheDir()), a cui altre applicazioni non avevano accesso diretto.

Con Android 4.4 (KitKat), fu introdotto il Storage Access Framework (SAF), un'API per gestire l'accesso a documenti e altri file tramite un'interfaccia utente di sistema. Questo permise agli utenti di selezionare file e directory a cui l'app poteva accedere temporaneamente, senza dover concedere permessi ampi come READ_EXTERNAL_STORAGE.

Cambiamenti significativi avvennero con Android 6.0 (Marshmallow) con l'introduzione dei permessi in tempo reale. I permessi di lettura e scrittura sulla memoria esterna vennero richiesti all'utente durante l'esecuzione dell'app, aumentando trasparenza e controllo.

Android 10 (Q) introdusse Scoped Storage, un'archiviazione isolata. Questo fu il cambiamento più importante degli ultimi anni. Invece di un accesso ampio a tutta la memoria esterna, le app di default hanno accesso solo a:

  • Le proprie directory private (getExternalFilesDir()).
  • Collezioni condivise di media (foto, video, audio) tramite l'API MediaStore.
  • Altri file selezionati dall'utente tramite SAF.

L'accesso ampio alla memoria esterna per alcuni tipi di file (ad esempio, file di documenti) è ora possibile solo tramite SAF. Per le app che necessitano di accesso a tutti i file (come i gestori di file), è stato introdotto un nuovo permesso MANAGE_EXTERNAL_STORAGE, che richiede una revisione speciale e non viene concesso alla maggior parte delle app.

Alcuni punti importanti:

  • Memoria interna: È sempre stata privata per ogni app.
  • Memoria esterna: È passata da accesso libero a uno strettamente controllato e isolato per ogni app.
  • MediaStore: È il metodo preferito per lavorare con i file multimediali in collezioni condivise.
  • SAF: Fornisce un modo sicuro e comodo per l'utente di concedere alle app l'accesso ai file al di fuori del suo spazio privato.

L'evoluzione del sistema di storage riflette l'impegno di Google nel aumentare la sicurezza dei dati degli utenti e nel semplificare la gestione dei file per gli sviluppatori.