MyTetra Share
Делитесь знаниями!
Что такое external storage в Android
Время создания: 19.08.2018 17:36
Текстовые метки: Android, external storage, KitKat, 4.4, Андроид, память, карта памяти
Раздел: Компьютер - Android
Запись: xintrea/mytetra_syncro/master/base/1425021150qos0ndmpb5/text.html на raw.github.com

На сегодняшний момент в разных версиях Android сделан различный подход к тому, как реализовывается External Storage. Чтобы в этом разбираться, надо рассмотреть историческую ретроспективу данного вопроса.



Вопрос


Я что-то запутался в терминах. А внешняя карточка - это не external storage разве?



Ответ


Запутался? Не ты один такой. Гуглеры и вендоры много для этого сделали!


External storage - это то, адрес чего возвращает соответствующая функция API. Все остальное от лукавого, и горе тому кто хардкодом баловался.


На заре времен памяти было мало, и SD-карточка и называлась этим external storage. Т.к. памяти мало, то приложения начали активно использовать external storage, а так как API делали разгильдяи, то проверку доступности карточки надо было писать руками и никто массово этим не заморачивался. Однако, со временем, память подешевела, и появилась возможность ограничиться только внутренней памятью, не пугая пользователя ценой трубки. А потом гугл сказал: все в облака! А чтоб ничего от облаков не отвлекало, карточки отменяются! И приложения быдлокодеров начали массово крешиться без карточек и external storage... И для фикса всего этого, external storage добавили во внутреннею память + MPT для доступа. Но остались самсунг и китайцы, которые клали на гугл в то время. Карточки они вернули, но теперь оно стало монтироваться рядом с external storage во внутренней памяти или некоторые позволяют делать замену точки монтирования. И началась эпоха разброда ибо понять куда теперь что запишется стало немного затруднительно.

К версии 4.4 (Kit-Kat) Гугл заматерел и используя свои сервисы как рычаг давления, построил всех. И производители карточки вернули к тому состоянию, в котором они должны были быть еще с версии 3.0. И тут началась массовое нытье юзверей и пришлось думать API для доступа к карточкам.

Резюмируя. При всем при этом доступ всего и вся к куску памяти, именуемом в API external storage, при наличии у приложения разрешения никто не ломал. Ибо славься обратная совместимость. Остается найти где оно расположено на твоем телефоне... =) Скорей всего это раздел на внутренней памяти, а не карточка. И если этого раздела просто так не видно, то карточку надо достать, и, возможно, такой раздел появится.

Другими словами, можно сказать, что external storage - это "внешняя память для приложения". Где она находится - определяет сама операционная система Android, а не пользователь.


Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования