@NonNull
    public static List<File> getAvailableExternalPrivateCgeoDirectories() {
        final List<File> availableExtDirs = new ArrayList<>();
        final File[] externalFilesDirs = ContextCompat.getExternalFilesDirs(CgeoApplication.getInstance(), null);
        for (final File dir : externalFilesDirs) {
            if (dir != null && EnvironmentCompat.getStorageState(dir).equals(Environment.MEDIA_MOUNTED)) {
                availableExtDirs.add(dir);
                Log.i("Added '" + dir + "' as available external dir");
            } else {
                Log.w("'" + dir + "' is NOT available as external dir");
            }
        }
        return availableExtDirs;
    }
Returns all available external private cgeo directories, e.g.:
<pre>
    /sdcard/Android/data/cgeo.geocaching/files
    /storage/emulated/0/Android/data/cgeo.geocaching/files
    /storage/extSdCard/Android/data/cgeo.geocaching/files
    /mnt/sdcard/Android/data/cgeo.geocaching/files
    /storage/sdcard1/Android/data/cgeo.geocaching/files
</pre>
main/src/main/java/cgeo/geocaching/storage/LocalStorage.java