Maison >Java >javaDidacticiel >Pourquoi ne puis-je pas créer de répertoires dans Android 10 et comment puis-je y remédier ?

Pourquoi ne puis-je pas créer de répertoires dans Android 10 et comment puis-je y remédier ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-06 03:56:19184parcourir

Why Can't I Create Directories in Android 10 and How Can I Fix It?

Impossible de créer un répertoire dans Android 10

Dans Android 10, vous ne pourrez peut-être pas créer de répertoire. Ceci est possible sur les appareils antérieurs à Android Oreo.

Cause :

Android 10 et versions ultérieures ont restreint l'accès par défaut à n'importe quel endroit du stockage externe ou du stockage amovible. Cela inclut Environment.getExternalStorageDirectory() et d'autres méthodes d'environnement (par exemple, getExternalStoragePublicDirectory()).

Solution :

Il existe plusieurs façons de résoudre ce problème :

  1. Pour Android 10 et 11, utiliser le mode de stockage traditionnel :

    dans le fichier manifeste Ajoutez android:requestLegacyExternalStorage="true" à l'élément Cela sélectionne le mode de stockage existant et votre code de stockage externe existant fonctionnera.

  2. Utiliser les méthodes contextuelles :

    Utilisez des méthodes contextuelles (par exemple, getExternalFilesDir()) pour accéder aux répertoires sur le stockage externe, vos applications peuvent écrivez-y. Aucune autorisation n'est requise pour utiliser ces répertoires. Cependant, une fois l'application désinstallée, les données qui y sont stockées seront supprimées.

  3. Utiliser des frameworks d'accès au stockage :

    Utiliser des frameworks d'accès au stockage tels que ACTION_OPEN_DOCUMENT et ACTION_CREATE_DOCUMENT.

  4. Pour le contenu multimédia, utilisez MediaStore :

    Si vous souhaitez stocker du contenu multimédia, vous pouvez utiliser MediaStore pour placer le média dans l'emplacement standard du média.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn