Nella mia app per Android, ho salvato alcuni file nella directory Environment.getExternalStorageDirectory() + "\MyApp"
. Questo ha funzionato bene fino ad Android 6 aggiornamento marshmallow. Dopo l'aggiornamento marshmallow, non riesco a scrivere in questa directory.È necessario il controllo dell'autorizzazione di runtime per scrivere nel percorso getExternalFilesDir() in marshmallow?
Come descritto nella risposta this, in marshmallow, le app devono richiedere l'autorizzazione dell'utente in fase di esecuzione prima di scrivere su una memoria esterna.
Ma, quando uso context.getExternalFilesDir(null)
invece di Environment.getExternalStorageDirectory()
, non ho bisogno di chiedere alcuna autorizzazione in fase di esecuzione e funziona solo (percorso restituito da context.getExternalFilesDir(null)
è anche all'interno della directory di archiviazione esterna).
È una specie di coincidenza o posso continuare a scrivere su context.getExternalFilesDir(null)
senza chiedere il permesso in fase di runtime?
Sei davvero in grado di scrivere file su storage esterno senza autorizzazione su Android 6? –