Spesso le app hanno la necessità di offrire uno o più file a un'altra app. Ad esempio, una galleria di immagini potrebbe voler offrire file agli editor di immagini oppure un'app di gestione file potrebbe consentire agli utenti di copiare e incollare file tra aree di archiviazione esterna. Un modo in cui un'app di invio può condividere un file è rispondere a una richiesta dell'app ricevente.
In tutti i casi, l'unico modo sicuro per offrire un file della tua app a un'altra app è inviare all'app ricevente l'URI dei contenuti del file e concedere autorizzazioni di accesso temporanee a quell'URI.
Gli URI dei contenuti con autorizzazioni di accesso temporanee all'URI sono sicuri perché si applicano solo all'app che riceve l'URI e scadono automaticamente. Il componente FileProvider
di Android fornisce il metodo getUriForFile()
per generare l'URI dei contenuti di un file.
Se vuoi condividere piccole quantità di dati di testo o numerici tra app, devi inviare un
Intent
che contenga i dati. Per informazioni su come inviare dati semplici con un
Intent
, consulta il corso di formazione
Condivisione di dati semplici.
Questo corso spiega come condividere in modo sicuro i file dalla tua app a un'altra app utilizzando gli URI dei contenuti generati dal componente FileProvider
di Android e le autorizzazioni temporanee concesse all'app di destinazione per l'URI dei contenuti.
Lezioni
- Configurazione della condivisione file
- Scopri come configurare la tua app per la condivisione di file.
- Condividere un file
- Scopri come offrire un file a un'altra app generando un URI dei contenuti per il file, concedendo le autorizzazioni di accesso all'URI e inviando l'URI all'app.
- Richiedere un file condiviso
- Scopri come richiedere un file condiviso da un'altra app, ricevere l'URI dei contenuti del file e utilizzare l'URI dei contenuti per aprire il file.
- Recupero delle informazioni dei file
-
Scopri come un'app può utilizzare un URI dei contenuti generato da un
FileProvider
per recuperare le informazioni sui file, inclusi il tipo MIME e le dimensioni del file.
Per ulteriori informazioni correlate, consulta: