Поэтому мне нужно получить список таких папок, но я не нашел способ для этого
Для этого нет ничего встроенного.
Как я могу это сделать?
Начать с:
File motherOfAllUserDirectoriesAndOtherStuff = getDir("whatever", Context.MODE_PRIVATE).getParentFile();
Вы можете перебирать все содержимое motherOfAllUserDirectoriesAndOtherStuff
с помощью стандартного ввода-вывода Java (например,listFiles()
).Однако имейте в виду, что не все в motherOfAllUserDirectoriesAndOtherStuff
будут вашими пользовательскими каталогами.SharedPreferences
, базы данных, другие файлы и т. Д. Также будут там.Вам нужно будет разработать алгоритм, который может определить, является ли подкаталог motherOfAllUserDirectoriesAndOtherStuff
одним из ваших пользовательских каталогов или нет, возможно, исходя из того, как выглядит хеш.
Если вы когда-нибудь сможете переписать это, создайте свойсобственный корень и поместите туда пользовательские каталоги.IOW:
File userDir = new File(getDir("myAppRoot", Context.MODE_PRIVATE), userLoginHash);