Skip to content

[mono] Implement Environment.GetFolderPath for Android #35490

@EgorBo

Description

@EgorBo

The following snippet:

var values = Enum.GetValues(typeof(global::System.Environment.SpecialFolder));
foreach (var sf in values)
{
    var path = global::System.Environment.GetFolderPath((global::System.Environment.SpecialFolder)sf);
    if (!string.IsNullOrEmpty(path))
    {
        Console.WriteLine($"{sf} = {path};");
    }
}

doesn't print anything for os=Android (all values are empty).
For reference, here is what current Xamarin.Android returns for my simple app:

Desktop = /data/user/0/com.companyname.Vederko/files/Desktop;
MyDocuments = /data/user/0/com.companyname.Vederko/files;
MyDocuments = /data/user/0/com.companyname.Vederko/files;
MyMusic = /data/user/0/com.companyname.Vederko/files/Music;
MyVideos = /data/user/0/com.companyname.Vederko/files/Videos;
DesktopDirectory = /data/user/0/com.companyname.Vederko/files/Desktop;
Fonts = /data/user/0/com.companyname.Vederko/files/.fonts;
Templates = /data/user/0/com.companyname.Vederko/files/Templates;
ApplicationData = /data/user/0/com.companyname.Vederko/files/.config;
LocalApplicationData = /data/user/0/com.companyname.Vederko/files/.local/share;
CommonApplicationData = /usr/share;
MyPictures = /data/user/0/com.companyname.Vederko/files/Pictures;
UserProfile = /data/user/0/com.companyname.Vederko/files;
CommonTemplates = /usr/share/templates;

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions