我开发游戏的Android,因为非常不同的Android设备的性质(从Samsung Galaxy Y
到Google Nexus 10
)我已经决定使用“多重APK”谷歌的-feature播放。我决定创建4个不同的软件包,每个软件包的资产规模都不一样。瞄准多个设备与多个APK
其中最小的只有10兆字节,图形资产缩小到240p(为了节省Galaxy Y上非常有限的内存),而最大的是几乎50兆字节,资产缩放到〜1500p以提供清晰的图形于Nexus 10.
我使用<compatible-screens>
来过滤每个版本到不同的设备。我正在使用screenSizes small
,normal
,large
和xlarge
,以及screenDensities ldpi
,mdpi
,hdpi
和xhdpi
。
我这里提到的每个屏幕尺寸,screenDensity组合涵盖四个APK之一。 问题是Google NEXUS 7
不属于任何这些!它采用
<screen android:screenSize="large" android:screenDensity="213" />
现在,很容易手动添加这些到四个的APK之一,但真正的问题是...我必须保持在谷歌的步伐决定继续将更新我的APK这些看似任意的屏幕密度类别?或者我* 有更好的方法来过滤APK? *
Android API文档建议使用<supports-screens>
来代替,但它提到它并未真正将其用于过滤器。
“的步伐谷歌决定继续将这些看似随意的屏幕密度类别?” - 考虑到自2009年以来平均每年平均不到一次,人们希望这不会让你步伐太快。 – CommonsWare 2013-04-10 15:08:09
Nexus 7是'tvdpi',你有没有试过在''声明中使用它?我注意到该文档不列出它......但值得一试 –
2013-04-10 15:10:00
嗯,事实证明的HTC One,Galaxy S的4和Experia还Z为xxhdpi,因为xxhdpi WASN”我的游戏并没有提供给这些设备在Google API文档中提到。 :| – Habba 2013-05-06 09:06:46