Перейти к содержанию
Fire Monkey от А до Я
  • 0

Как определить путь к корню SD-Card на Android?


Morfi

Вопрос

Рекомендуемые сообщения

  • 0
  • Модераторы

Пока могу только посоветовать статью "Получаем список доступных устройств хранения информации".

Важно:

Третий метод будет работать на всех версиях Android до 4.3. С версии 4.3 произошли значительные изменения в организации файлов. К сожалению, у меня нет устройства с Android 4.3 чтобы провести анализ и написать код для версий выше 4.3.

 

И второе, приложения, написанные в Делфи, по какой-то причине, не могут прочитать файл mounts. Я предполагаю, что если бы файл можно было прочитать, то код для версий выше 4.3 основывался на чтении этого файла.

 

UPD (25.11.14). Для Android 4.4.* описано тут: Android 4.4 и запись на внешнюю карту памяти...

Изменено пользователем Andrey Yefimov
Ссылка на комментарий
  • 0

Прошу прощения за некропост, но информации по решению данной задачи как бы нет. Я уверен, что прокопал не весь интернет, однако же... Если у кого есть правильный ответ, выложите, его пожалуйста.

На данный момент опробованы такие способы:

1. На основе заметки  Получаем список доступных устройств хранения информации . Есть список, но там никак не понять какой из вариантов это карта. Например, на планшете Prestigio multipad 4 (4.2.2), sdcard1 - это карта, а sdcard0 - память устройства, но на телефоне Micromax Q338 (5.1) - наоборот: sdcard0 - это карта, а sdcard1 - память устройства. 

2. На основе заметки  Android 4.4 и запись на внешнюю карту памяти...  . На планшете - оба пути -  эмулейтед, на телефоне - вообще ничего не возвращает.

Всякие файловые просмотрщики вполне отлично отличают внутреннюю память, от памяти телефона. Посему, хочу попытаться поднять этот вопрос снова - подскажите, пожалуйста, как  определить путь к корню SD-Card? Ссылки, предоставленные здесь не отвечают, к сожалению, на этот поставленный ранее вопрос.

Ссылка на комментарий
  • 0
В 28.03.2016 в 00:42, Lem0nti сказал:

Прошу прощения за некропост, но информации по решению данной задачи как бы нет. Я уверен, что прокопал не весь интернет, однако же... Если у кого есть правильный ответ, выложите, его пожалуйста.

На данный момент опробованы такие способы:

1. На основе заметки  Получаем список доступных устройств хранения информации . Есть список, но там никак не понять какой из вариантов это карта. Например, на планшете Prestigio multipad 4 (4.2.2), sdcard1 - это карта, а sdcard0 - память устройства, но на телефоне Micromax Q338 (5.1) - наоборот: sdcard0 - это карта, а sdcard1 - память устройства. 

2. На основе заметки  Android 4.4 и запись на внешнюю карту памяти...  . На планшете - оба пути -  эмулейтед, на телефоне - вообще ничего не возвращает.

Всякие файловые просмотрщики вполне отлично отличают внутреннюю память, от памяти телефона. Посему, хочу попытаться поднять этот вопрос снова - подскажите, пожалуйста, как  определить путь к корню SD-Card? Ссылки, предоставленные здесь не отвечают, к сожалению, на этот поставленный ранее вопрос.

если не ошибаюсь то поможет данная тема http://docwiki.embarcadero.com/RADStudio/Seattle/en/Deployment_Manager#Deployment_Manager_Fields 

Ссылка на комментарий
  • 0

@Алмаз Амангельды это не то.

 

TPath.GetPublicPath - вернет путь на внешней флешке. Public директория всегда на внешней флешке, если она есть конечно.

GetPublicPath вызывает getExternalFilesDirs на Android.

https://developer.android.com/reference/android/content/Context.html

getExternalFilesDirs(String type)

Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place persistent files it owns.

И вот еще список Path функций для Delphi. 

Ссылка на комментарий
  • 0
В 22.05.2017 в 07:03, ENERGY сказал:

@Алмаз Амангельды это не то.

 

TPath.GetPublicPath - вернет путь на внешней флешке. Public директория всегда на внешней флешке, если она есть конечно.

GetPublicPath вызывает getExternalFilesDirs на Android.

https://developer.android.com/reference/android/content/Context.html

getExternalFilesDirs(String type)

Returns absolute paths to application-specific directories on all shared/external storage devices where the application can place persistent files it owns.

И вот еще список Path функций для Delphi. 

ООО спасибо))) мне тоже стало интересно стал рыскать, видел в документации таблицу но в ней не было 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...