Je voudrais créer un navigateur de fichiers qui fera deux choses: 1) Autoriser l'utilisateur à parcourir et sélectionner un répertoire 2) Autoriser l'utilisateur à parcourir tous les fichiers sur sa carte SD
J'ai cherché des tutoriels mais je n'arrive pas à en trouver? Quelqu'un peut-il m'aider s'il vous plaît en expliquant comment mon code devrait faire pour avoir un simple navigateur de fichiers ou en me fournissant un lien vers un tutoriel/code source?
Merci et merci!
Si vous êtes réellement plus intéressé à apprendre à écrire le vôtre, je vous suggère de lire attentivement la documentation de la classe File . C'est là que vous allez faire la plupart du travail.
Dans le cas des cartes SD/autre stockage externe pour Android, vous devez d'abord vérifier que le stockage externe est monté et disponible avant d'essayer de le lire, en utilisant la classe Environment :
String extState = Environment.getExternalStorageState();
//you may also want to add (...|| Environment.MEDIA_MOUNTED_READ_ONLY)
//if you are only interested in reading the filesystem
if(!extState.equals(Environment.MEDIA_MOUNTED)) {
//handle error here
}
else {
//do your file work here
}
Une fois que vous avez déterminé l'état approprié du stockage externe, un moyen simple de commencer est d'utiliser la méthode listFiles () de File, comme ceci:
//there is also getRootDirectory(), getDataDirectory(), etc. in the docs
File sd = Environment.getExternalStorageDirectory();
//This will return an array with all the Files (directories and files)
//in the external storage folder
File[] sdDirList = sd.listFiles();
Vous pouvez ensuite commencer à utiliser FileFilters pour affiner vos résultats:
FileFilter filterDirectoriesOnly = new FileFilter() {
public boolean accept(File file) {
return file.isDirectory();
}
};
File[] sdDirectories = sd.listFiles(filterDirectoriesOnly);
À partir de là, lisez simplement les documents pour trouver le type de chose que vous cherchez à en faire, puis vous pouvez travailler à les lier dans des adaptateurs de liste, etc.
J'espère que cela t'aides!
C'est une réponse tardive mais j'ai travaillé sur la création d'un Android Explorateur de fichiers récemment. https://github.com/mburman/Android-File-Explore
C'est vraiment simple. Il s'agit essentiellement d'un seul fichier que vous devez intégrer à votre application.
Jetez un oeil à OI File Manager , qui est un open-source Android gestionnaire de fichiers. Vous pouvez obtenir le code source ici .