2017-06-15 6 views
0

Ich habe versucht, zu verhindern, dass Benutzer meine App auf Geräten herunterladen, die eindeutig nicht in der Lage sind, es auszuführen (es ist ein Unity3D-Spiel), und dachte, ich würde Android verwenden: glEsVersion und Bildschirmgröße als Filter, um das Schlimmste loszuwerden Sie.Sind die Android-Manifest-Gerätefilteroptionen kaputt oder fehle ich etwas?

Mit den folgenden zwei Zeilen in meinem Manifest, filtert Google Play meine Liste der kompatiblen Geräte nach unten zu (einem überraschend niedrigen) 905 gültige Geräte:

<supports-screens android:smallScreens="false" android:normalScreens="false" android:largeScreens="true" android:xlargeScreens="true" /> 
    <uses-feature android:glEsVersion="0x00020000" android:required="true"/> 

(Ohne sie, bekomme ich 4489 gültige Geräte)

Eines der Geräte, die entfernt werden, ist mein eigenes Nexus 5, aber es hat OpenGLES 3.0-Unterstützung und eine Auflösung weit über die Definition für "largeScreen", so dass es überhaupt keinen Sinn macht.

Hat jemand eine Idee was los ist? GooglePlay sagt nicht, warum ein bestimmtes Gerät ausgeschlossen wird. Daher ist es schwierig, ein Backtrace durchzuführen.

Antwort

0

Ich glaube nicht, dass wird funktionieren, aber haben Sie versucht

  android:anyDensity="true" 

hinzufügen Aber in https://developer.android.com/guide/topics/graphics/opengl.html#manifest können wir sehen:

If your application uses OpenGL features that are not available on all devices 
+0

android: anyDensity wahr ist standardmäßig aktiviert und nach der Dokumente sollten niemals auf "false" gesetzt werden. Ich bin mir nicht sicher, welchen Link Sie mir gegeben haben, aber was ich getan habe, war korrekt und sollte die Geräte auf OpenGL ES 2.0 und höher beschränken. –

Verwandte Themen