Следующий код запускается в последней версии Android. Внешняя SD-карта 32 ГБ установлена. Целью является получение данных с SD-карты.
File[] externalFilesDirs = context.getExternalFilesDirs(null);
Иногда externalFilesDirs[1]
возвращает null
, который должен указывать путь к хранилищу SD-карты.
Это противоречивая проблема. Эта проблема возникает иногда в течение нескольких минут после открытия приложения, а иногда и после нескольких часов использования.
Как только значение externalFilesDirs[1]
начинает приходить null
, оно всегда будет выдавать null
, пока SD-карта не будет извлечена и снова смонтирована.
Javadoc getExternalFilesDirs(String type)
утверждает, что:
* @return the absolute paths to application-specific directories. Some
* individual paths may be {@code null} if that shared storage is
* not currently available.
Кто-нибудь имеет какое-либо представление о первопричине и как ее можно устранить?