Статическое хранилище приложений Android
-
26-09-2019 - |
Вопрос
Я создаю приложение для Android, в которое будет встроена музыка (~ 80 МБ).Я планировал поместить его в папку res/raw.
Поскольку Android хранит все это во внутренней памяти, не слишком ли он велик?Какие у меня есть варианты?Я придумал следующее:
- Скопируйте ресурсы из внутренней памяти на SD-карту при первом запуске приложения.После этого удалить из внутренней памяти (возможно ли это?)
- Загружайте музыку из Интернета при первом запуске приложения.
Я бы предпочел не использовать вариант 2, поскольку я хочу, чтобы приложение было полностью автономно и статическая музыка не менялась (кроме случаев между выпусками).
Есть еще идеи?
Решение
Номер 1 не является допустимым вариантом, пакет приложения (.apk) с музыкой в сыром виде будет весить около 80Мб.Пользователь Android не будет загружать приложение, которое 80Мб размер (если достаточно свободной памяти для его установки).
Вам следует использовать вариант 2.Загрузка данных в фоновом режиме и сохранение на SD-карте в качестве кеша.Поэтому при следующем запуске приложения вам не придется загружать его снова.
КСТАТИ:Используйте функцию android.os.Environment.getExternalStorageDirectory(), чтобы получить каталог на SD-карте.
Лучший,
Другие советы
Номер 2 - единственный вариант, 80 МБ - огромный размер для приложения Android.