Xamarin.Forms как получить разрешения на запись во внешнее хранилище? /DCIM

        private static string appFolder = "/storage/emulated/0/DCIM";
        private bool dis = Directory.Exists(appFolder);

Приложение выпоняет вышеприведённый код, и показывает наличие директории ( dis==true), но на попытку создать директорию:

Directory.CreateDirectory(Path.Combine(appFolder, nameFolder));

...происходит исключение: Access to the path '/storage/emulated/0/DCIM/Photos' is denied.

В манифесте Xamarin.Forms для Andriod включены уже все возможные разрешения.

Приложение запускалось на уст-вах Android ver: 6/8.1/11 и соответствующих эмуляторах.

Пожалуйста подскажите, как решается этот вопрос? 

P.s.: Заранее всем спасибо.

1 ответ

Решение

В общем вопрос решён, за исключеним понимания "как это работает?".

Перед созданием каталога явно запросил у пользователя разрешение на запись:

var status = Permissions.RequestAsync<Permissions.StorageWrite>();

и получил ожидаемый результат. 

 

Другие вопросы по тегам