Как организовать работу с большим объемом ресурсов drawable?

SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
Ответить
grem17
Сообщения: 85
Зарегистрирован: 16 сен 2014, 11:54

Как организовать работу с большим объемом ресурсов drawable?

Сообщение grem17 » 06 фев 2015, 07:52

всем привет

когда в программе используется допустим 10-20 картинок, то нет проблем, закидываем их в res\drawable и используем...что делать когда картинок несколько сотен, а если несколько тысяч?
удобно было бы создать каталог в res\drawable\pic1, res\drawable\pic2 ... res\drawable\pic100
и разместить картинки по тематическим группам. Насколько знаю - так делать нельзя, т.е. создавать доп.каталоги. Подскажите как быть в таком случае? Как правильно организовать работу с большим объемом ресурсов?

может надо создавать внешнюю библиотеку и подключать ее?

Аватара пользователя
KamiSempai
Сообщения: 1339
Зарегистрирован: 17 фев 2012, 21:23
Откуда: Мордор

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение KamiSempai » 06 фев 2015, 14:26

Если это обычные картинки и они не зависят от dpi, их можно положить в assets. А там уже все это дело легко раскидать по папкам.
R.id.team
Хватит таскать макулатуру на тренировку! Используй T Note.

VladislavAvramec
Сообщения: 2
Зарегистрирован: 31 окт 2014, 18:11

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение VladislavAvramec » 06 фев 2015, 17:50

Да, только не стоит забывать о том что Маркет не пропускает арк файлы более 50Мб и рекомендует создавать файлы расширений, а вот как это сделать? я перечитывал хелп.. и ничего непонятно. Сам пока тоже этот вопрос не решил.. Может кто знает?

PrimaryKey
Сообщения: 2
Зарегистрирован: 15 фев 2015, 09:51

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение PrimaryKey » 15 фев 2015, 09:52

VladislavAvramec писал(а):Да, только не стоит забывать о том что Маркет не пропускает арк файлы более 50Мб и рекомендует создавать файлы расширений, а вот как это сделать? я перечитывал хелп.. и ничего непонятно. Сам пока тоже этот вопрос не решил.. Может кто знает?
Поддерживаю вопрос, есть ли в видео-уроках как создать файлы расширений и работать с ними?

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение altwin » 15 фев 2015, 12:42

Я бы в первую очередь подумал - а зачем столько статических картинок? Я предпочитаю использовать amazon и кеш просморенных, в любом случае если пользователь не смотрел - оно ему не нужно в девайсе, если кеш слишком большой - он может его очистить.
Если много статических картинок, то стоит задумать, нужно ли такое приложение и что такое много? Если их будет миллион или 10 миллионов вам всеравно придется общаться с сервером.
Изображение

grem17
Сообщения: 85
Зарегистрирован: 16 сен 2014, 11:54

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение grem17 » 16 фев 2015, 09:46

altwin писал(а):Я бы в первую очередь подумал - а зачем столько статических картинок? Я предпочитаю использовать amazon и кеш просморенных, в любом случае если пользователь не смотрел - оно ему не нужно в девайсе, если кеш слишком большой - он может его очистить.
Если много статических картинок, то стоит задумать, нужно ли такое приложение и что такое много? Если их будет миллион или 10 миллионов вам всеравно придется общаться с сервером.
допустим мое приложение использует разные темы оформления, выбираеме пользователем
они включают в себя картинки на кнопки, шрифты и пр.
можно конечно с drawable все это выложить по шаблону и потом использовать, например:
theme1_file1
theme1_file2
...
theme1_fileN

theme2_file1
theme2_file1
..
theme2_fileM

но будет ли это правильным? если таких тем наберется с десяток, то ресурсов в drawable скопится несколько сотен, если закачивать их из инета...а если у пользователя не подключен инет? ну хорошо, допустим подключен, а на каком сервере хранить ресурсы, как организовать к ним доступ и пр.

вопрос остается открытым

Аватара пользователя
altwin
Сообщения: 1951
Зарегистрирован: 13 ноя 2013, 14:46

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение altwin » 16 фев 2015, 11:54

grem17 писал(а): допустим мое приложение использует разные темы оформления, выбираеме пользователем
они включают в себя картинки на кнопки, шрифты и пр.
можно конечно с drawable все это выложить по шаблону и потом использовать, например:
theme1_file1
theme1_file2
...
theme1_fileN

theme2_file1
theme2_file1
..
theme2_fileM

но будет ли это правильным? если таких тем наберется с десяток, то ресурсов в drawable скопится несколько сотен, если закачивать их из инета...а если у пользователя не подключен инет? ну хорошо, допустим подключен, а на каком сервере хранить ресурсы, как организовать к ним доступ и пр.

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

Сервер может быть любым ровно как и доступ, обычно это rest. В любом случае Нужно понимать что пользователь может удалить лишнее либо если это 200+мб не изменяемого и не используемого контента, пользоваться этим никто не будет.
Изображение

grem17
Сообщения: 85
Зарегистрирован: 16 сен 2014, 11:54

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение grem17 » 16 фев 2015, 12:17

хм, а можете дать ссылки почитать, как это реализуется?

пока что представляю себе это следующим образом:
есть базовая тема, которая зашита в проге по умолчанию
в настройках есть таблица со скриншотами других тем, по клику производится скачивание и установка, повторный клик - удалить и вернуться к базовой теме

в этом случае мне надо в инете создавать свой файловый сервер и как то организовывать обмен?

можете дать инфу почитать? не знаю даже где искать такое

PrimaryKey
Сообщения: 2
Зарегистрирован: 15 фев 2015, 09:51

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение PrimaryKey » 16 фев 2015, 19:44

Ну а если нет возможности загружать контент во время работы? Если необходимо залить во время установки видео-файлы, как разбить на apk + 2 файла *.obb?

VladislavAvramec
Сообщения: 2
Зарегистрирован: 31 окт 2014, 18:11

Re: Как организовать работу с большим объемом ресурсов drawa

Сообщение VladislavAvramec » 20 фев 2015, 17:26

http://samonesoznanie.blogspot.com/2013 ... droid.html
вот ссылка на то как создать эти файлы... ничего сложного... но вот какими методами работать с этими файлами я пока не разобрался... + к тому же есть пример на GitHub:
https://github.com/KENNYSOFT/SampleDownloaderActivity
проект скачивается, но ни Eclipse, ни Андроид Студия почему-то их не открывает и не импортирует... А может я делаю что-то не так...(
Также с официального хелпа, я полностью перевел статью, хотя на мой взгляд криво, но все же если кому интересно могу скинуть (формат Word)... И все равно не разобрался
Ребята, если кто разберется, плиз, поделитесь опытом... У меня самого весит проект пока на 94Мб, а я его еще и планирую расширить, чтобы поддерживал другие языки... Никак не могу его выложить((((

Ответить