我開發遊戲的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