2013-09-25 4 views
4

Я видел много таких вопросов и читал много документов, но я до сих пор не уверен, что это за правильный путь. У меня есть приложение с 500 фотографиями, и сначала, как я делал это, было масштабировать каждую фотографию 5 раз, до размеров пикселей для каждого ldpi, mdpi, hdpi, xhdpi и xxhdpi. Но, после этого, приложение получило гораздо больше, чем должно было быть, и поскольку вы можете загружать только .apk с 50 МБ на рынок, я оказался в ловушке.Как поддерживать несколько устройств с множеством изображений в приложении?

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

  • Сделайте несколько макетов для каждого из этой плотности на устройствах и масштабе с различным дпом-й в них
  • Сделайте несколько файлов .apk, каждый для каждого устройства с разной плотностью (все же Google делает акцент на этот вариант, чтобы сделать это, только если вы действительно не можете сделать это в любом случае - почему это? Это было бы идеально для меня, поскольку У меня уже есть фотографии, подготовленные для каждой плотности)
  • Сделайте несколько снимков и поместите их только в один .apk - это может Не работайте для меня, так как .apk слишком велик.
  • Сделайте снимки, которые хороши для устройства MDPI, поместите их в «drawable», и они будут автоматически изменять размер для других устройств и меньше для устройств с меньшей плотностью - это делает проблему поскольку изображения, когда они изменяются с MDPI на другие большие устройства с разрешением dpi, изображения размыты.

Итак, в любом случае, правильный способ обращения с этим будет следовать первому варианту, правильно? Я должен просто взять снимки xxhdpi (поэтому они всегда масштабируются от лучшего изображения), помещают их в drawable-nodpi? Однако у меня есть некоторые проблемы с масштабированием на ImageButtons. Пожалуйста, скажите, как это сделать правильно.

ответ

1

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

Используйте только одно выдвижное, высокое, тем лучше. это зависит от конечного размера апка, который вы (рынок) можете нести.

Может быть, этот вопрос поможет:

Only use XHDPI drawables in Android app?

0

Дополнение к ответу на Локи. Вы можете решить проблему плохой работы на устройствах малого масштаба, создавая папку кеша для изображений. Уменьшите изображение при первом загрузке устройства в соответствии с плотностью устройства, сохраните его в папке с кешем и в следующий раз используйте кешированное изображение.

Бонус, если вы делаете это в пакетном процессе в фоновом режиме!

0

Я не знаю, но можно ли это сделать как обновление для приложения. Вы загружаете обычное приложение для ванилин, которое предлагает пользователю обновить или просто делает это автоматически. Как и то, что Google нуждается в улучшении. Когда я загружаю приложение, мне нужно только одно приложение для одного языка. Одно устройство. Такие как Microsoft mentality

Смежные вопросы