2013-04-10 4 views
1

Я разрабатываю игры для Android, и потому что очень разный характер Android-устройств (от Samsung Galaxy Y до Google Nexus 10) Я решил использовать «несколько APK» -файлов Google Play. Я решил создать 4 разных пакета, каждый с активами, масштабированными до разных размеров.Ориентация на несколько устройств с несколькими APK

Самый маленький из них составляет около 10 мегабайт, а графические активы масштабируются до 240p (чтобы сохранить очень ограниченную память на Galaxy Y), а самая большая - почти 50 мегабайт с активами, масштабированными до ~ 1500p для обеспечения четкой графики для Nexus 10.

Я использую <compatible-screens> для фильтрации каждой версии на разные устройства. Я использую screenSizes small, normal, large и xlarge, и screenDensities ldpi, mdpi, hdpi и xhdpi.

У меня есть каждая комбинация screenSize-screenDensity, упомянутая здесь, в одном из четырех APK. Проблема заключается в том, что Google NEXUS 7 не принадлежит ни к одному из этих! Он использует

<screen android:screenSize="large" android:screenDensity="213" />

Теперь это легко вручную добавить их к одному из четырех APK,, но реальный вопрос ... я должен постоянно обновлять свои APK-в темпе Google решает продолжать добавлять эти, по-видимому, произвольные категории плотности экрана? Или i * Есть ли лучший способ фильтрации APK? *

Документы API API предлагают вместо этого использовать <supports-screens>, но в нем упоминается, что он действительно не использует его для фильтра.

+1

«В темпе Google решает продолжать добавлять эти, казалось бы, произвольные категории плотности экрана?» - учитывая, что они усредняли менее одного года с начала 2009 года, можно надеяться, что это не слишком быстро для вас. – CommonsWare

+0

Nexus 7 - это 'tvdpi', вы пробовали использовать это в объявлении' '? Я замечаю, что документы не перечисляют его ... но стоит попробовать –

+0

Ну, оказывается, что HTC One, Galaxy S 4 и Experia Z являются xxhdpi, а мои игры недоступны для этих устройств, потому что xxhdpi wasn ' t, упомянутых в документах API Google. : | – Habba

ответ

1

Мне кажется, что вы должны отфильтровать свои маленькие и обычные APK так, как вы сейчас есть, но фильтруйте ваши большие и худшие APK, как описано here. Это похоже на то, что рекомендует Google в такой ситуации.

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