Wenn ein Nutzer nach Apps sucht, die er bei Google Play herunterladen kann, werden die Ergebnisse nach der Kompatibilität mit dem Gerät gefiltert. Wenn für eine App beispielsweise eine Kamera erforderlich ist, wird sie bei Google Play nicht auf Geräten angezeigt, die keine Kamera haben. Diese Filterung hilft Entwicklern, die Bereitstellung ihrer Apps zu verwalten und für eine bestmögliche Nutzererfahrung zu sorgen.
Die Filterung bei Google Play basiert auf verschiedenen Arten von App-Metadaten und Konfigurationseinstellungen, einschließlich Manifestdeklarationen, erforderlichen Bibliotheken, Architekturabhängigkeiten und Vertriebssteuerungen, die in der Google Play Console festgelegt sind, z. B. geografische Ausrichtung und Preise.
Die Google Play-Filterung basiert teilweise auf Manifestdeklarationen und anderen Aspekten des Android-Frameworks. Das tatsächliche Filterverhalten unterscheidet sich jedoch vom Framework und ist nicht an bestimmte API-Ebenen gebunden. In diesem Dokument werden die aktuellen Filterregeln von Google Play beschrieben.
So funktionieren Filter bei Google Play
Google Play verwendet die unten beschriebenen Filtereinschränkungen, um zu bestimmen, ob Ihre App einem Nutzer angezeigt wird, der in der Google Play App nach Apps sucht oder diese durchsucht.
Bei der Entscheidung, ob Ihre App angezeigt werden soll, prüft Google Play die Hardware- und Softwareanforderungen des Geräts sowie den Mobilfunkanbieter, den Standort und andere Merkmale. Anschließend werden diese mit den Einschränkungen und Abhängigkeiten verglichen, die in der Manifestdatei und den Veröffentlichungsdetails der Anwendung angegeben sind.
Wenn die App gemäß den Filterregeln mit dem Gerät kompatibel ist, wird sie dem Nutzer von Google Play angezeigt. Andernfalls wird Ihre App von Google Play in den Suchergebnissen und in der Kategorieauswahl ausgeblendet, auch wenn ein Nutzer die App ausdrücklich anfordert, indem er auf einen Deeplink klickt, der direkt auf die App-ID bei Google Play verweist.
Sie können die verfügbaren Filter für Ihre App beliebig kombinieren. Sie können beispielsweise eine minSdkVersion
-Anforderung von "4"
festlegen und smallScreens="false"
in der App einrichten. Wenn Sie die App dann bei Google Play hochladen, können Sie die Ausrichtung nur auf europäische Länder (Mobilfunkanbieter) festlegen. So verhindern die Filter von Google Play, dass die Anwendung auf Geräten verfügbar ist, die nicht allen drei Anforderungen entsprechen.
Alle Filtereinschränkungen sind mit der Version einer Anwendung verknüpft und können sich zwischen den Versionen ändern. Wenn ein Nutzer beispielsweise Ihre App installiert hat und Sie ein Update veröffentlichen, durch das die App für den Nutzer unsichtbar wird, sieht er nicht, dass ein Update verfügbar ist.
Filtern auf der Google Play-Website
Wenn Nutzer die Google Play-Website aufrufen, sehen sie alle veröffentlichten Apps. Auf der Google Play-Website werden die Anwendungsanforderungen jedoch mit den registrierten Geräten des Nutzers verglichen, um die Kompatibilität zu prüfen. Die App kann nur installiert werden, wenn sie mit dem Gerät kompatibel ist.
Filtern nach App-Manifest
Die meisten Filter werden durch Elemente in der Manifestdatei einer Anwendung (AndroidManifest.xml) ausgelöst. Nicht alle Elemente in der Manifestdatei können jedoch ein Filtern auslösen. In Tabelle 1 sind die Manifestelemente aufgeführt, mit denen Sie die Filterung auslösen sollten. Außerdem wird erläutert, wie die Filterung für jedes Element funktioniert.
Tabelle 1 Manifest-Elemente, die die Filterung bei Google Play auslösen.
Manifest-Element | Filtername | Funktionsweise |
---|---|---|
<supports-screens>
|
Bildschirmgröße |
Eine Anwendung gibt die Bildschirmgrößen an, die sie unterstützen kann, indem sie Attribute des Google Play geht davon aus, dass die Plattform auf dem Gerät kleinere Layouts an größere Bildschirme anpassen kann, größere Layouts jedoch nicht an kleinere Bildschirme. Wenn eine App also nur die Unterstützung einer „normalen“ Bildschirmgröße angibt, stellt Google Play die App sowohl für Geräte mit normalem als auch mit großem Display zur Verfügung, filtert sie aber so, dass sie nicht für Geräte mit kleinem Display verfügbar ist. Wenn eine Anwendung keine Attribute für
Beispiel 1 Beispiel 2 Beispiel 3 Weitere Informationen zum Deklarieren der Unterstützung für Bildschirmgrößen in Ihrer App finden Sie unter |
<uses-configuration>
|
Gerätekonfiguration: Tastatur, Navigation, Touchscreen |
Eine Anwendung kann bestimmte Hardwarefunktionen anfordern. Google Play zeigt die App dann nur auf Geräten an, die die erforderliche Hardware haben. Beispiel 1 Beispiel 2 Weitere Informationen finden Sie unter |
<uses-feature>
|
Gerätefunktionen ( name ) |
Für eine Anwendung können bestimmte Gerätefunktionen auf dem Gerät vorhanden sein. Diese Funktion wurde in Android 2.0 (API-Level 5) eingeführt. Beispiel 1 Beispiel 2 Vollständige Informationen finden Sie unter Filterung anhand impliziter Funktionen:In einigen Fällen interpretiert Google Play Berechtigungen, die über |
OpenGL-ES-Version ( openGlEsVersion ) |
Eine Anwendung kann mit dem Attribut Beispiel 1 Beispiel 2 Beispiel 3 Beispiel 4 Weitere Informationen finden Sie unter |
|
<uses-library> |
Softwarebibliotheken | Für eine Anwendung können bestimmte freigegebene Bibliotheken auf dem Gerät vorhanden sein. Beispiel 1 Beispiel 2 Weitere Informationen finden Sie unter |
<uses-permission> |
Google Play filtert streng genommen nicht nach Wenn eine App hardwarebezogene Berechtigungen anfordert, geht Google Play davon aus, dass die zugrunde liegenden Hardwarefunktionen für die App erforderlich sind, auch wenn es keine entsprechenden Eine Liste der Berechtigungen, die Hardwarefunktionen implizieren, finden Sie in der Dokumentation zum Element |
|
<uses-sdk> |
Framework-Mindestversion (minSdkVersion ) |
Für eine Anwendung kann ein Mindest-API-Level erforderlich sein. Beispiel 1 Beispiel 2 Da Sie dieses zweite Szenario vermeiden möchten, empfehlen wir Ihnen, immer eine |
Maximale Framework-Version (maxSdkVersion ) |
Veraltet. Unter Android 2.1 und höher wird das Attribut Die Deklarierung von |
Erweiterte Manifestfilter
Zusätzlich zu den Manifestelementen in Tabelle 1 können bei Google Play auch Anwendungen anhand der erweiterten Manifestelemente in Tabelle 2 gefiltert werden.
Diese Manifestelemente und die damit ausgelöste Filterung sind nur für Ausnahmefälle gedacht. Sie sind für bestimmte Arten von leistungsstarken Spielen und ähnlichen Anwendungen konzipiert, für die strenge Kontrollen der Anwendungsbereitstellung erforderlich sind. Die meisten Anwendungen sollten diese Filter niemals verwenden.
Tabelle 2 Erweiterte Manifestelemente für die Google Play-Filterung.
Manifest-Element | Zusammenfassung |
---|---|
<compatible-screens> |
Google Play filtert die Anwendung, wenn die Bildschirmgröße und -dichte des Geräts nicht mit einer der Bildschirmkonfigurationen (deklariert durch ein Achtung:Normalerweise sollten Sie dieses Manifest-Element nicht verwenden. Wenn Sie dieses Element verwenden, kann die potenzielle Nutzerbasis für Ihre Anwendung erheblich reduziert werden, da alle Kombinationen von Bildschirmgröße und ‑dichte ausgeschlossen werden, die Sie nicht aufgeführt haben. Verwenden Sie stattdessen das Manifest-Element |
<supports-gl-texture> |
Google Play filtert die Anwendung, es sei denn, mindestens eines der von der Anwendung unterstützten GL-Texturkomprimierungsformate wird auch vom Gerät unterstützt. |
Andere Filter
Google Play verwendet andere Anwendungsmerkmale, um zu bestimmen, ob eine App für einen bestimmten Nutzer auf einem bestimmten Gerät angezeigt oder ausgeblendet werden soll, wie in der folgenden Tabelle beschrieben.
Tabelle 3 Eigenschaften von Apps und Veröffentlichungen, die sich auf die Filterung bei Google Play auswirken
Filtername | Funktionsweise |
---|---|
Veröffentlichungsstatus | Nur veröffentlichte Apps werden bei Suchanfragen und beim Stöbern in Google Play angezeigt. Auch wenn eine App nicht veröffentlicht ist, kann sie installiert werden, wenn Nutzer sie im Bereich „Downloads“ unter den gekauften, installierten oder vor Kurzem deinstallierten Apps sehen. Wenn eine Anwendung gesperrt wurde, können Nutzer sie nicht neu installieren oder aktualisieren, auch wenn sie in ihren Downloads angezeigt wird. |
Preisstatus | Nicht alle Nutzer können kostenpflichtige Apps sehen. Damit kostenpflichtige Apps angezeigt werden, muss auf dem Gerät Android 1.1 oder höher installiert sein und es muss sich in einem Land befinden, in dem kostenpflichtige Apps verfügbar sind. Wenn ein Gerät eine SIM-Karte hat, bestimmt der SIM-Anbieter, ob kostenpflichtige Apps verfügbar sind. Wenn ein Gerät keine SIM-Karte hat, wird anhand der IP-Adresse des Geräts ermittelt, ob sich das Gerät in einem Land befindet, in dem kostenpflichtige Apps verfügbar sind. |
Länderspezifisches Targeting | Wenn Sie Ihre App auf Google Play hochladen, können Sie unter Preisgestaltung und Vertrieb die Länder auswählen, in denen Ihre App angeboten werden soll. Die App ist dann nur für Nutzer in den von Ihnen ausgewählten Ländern verfügbar. |
CPU-Architektur (ABI) | Eine Anwendung, die native Bibliotheken für eine bestimmte CPU-Architektur enthält (z. B. ARM EABI v7 oder x86), ist nur auf Geräten sichtbar, die diese Architektur unterstützen. Weitere Informationen zum NDK und zur Verwendung nativer Bibliotheken finden Sie unter Was ist das Android NDK? |
Kopiergeschützte Anwendungen | Google Play unterstützt die Funktion „Kopierschutz“ in der Play Console nicht mehr und filtert Apps nicht mehr auf dieser Grundlage. Verwenden Sie stattdessen die App-Lizenzierung, um Ihre App zu schützen. Weitere Informationen finden Sie unter Ersatz für Kopierschutz. |
Mehrere APKs mit verschiedenen Filtern veröffentlichen
Mit einigen Google Play-Filtern können Sie mehrere APKs für dieselbe App veröffentlichen, um für verschiedene Gerätekonfigurationen ein anderes APK bereitzustellen. Wenn Sie beispielsweise ein Videospiel mit High-Fidelity-Grafik-Assets erstellen, können Sie zwei APKs erstellen, die jeweils unterschiedliche Texturkomprimierungsformate unterstützen. So können Sie die Größe der APK-Datei reduzieren, indem Sie nur die Texturen einschließen, die für jede Gerätekonfiguration erforderlich sind. Je nach Unterstützung der Texturkomprimierungsformate auf dem jeweiligen Gerät liefert Google Play das APK, das Sie für die Unterstützung dieses Geräts deklariert haben.
Derzeit können Sie bei Google Play nur dann mehrere APKs für dieselbe App veröffentlichen, wenn jedes APK unterschiedliche Filter basierend auf den folgenden Konfigurationen bietet:
- OpenGL-Texturkomprimierungsformate
Verwenden Sie dazu das Element
<supports-gl-texture>
. - Bildschirmgröße (und optional Bildschirmdichte)
Über das Element
<supports-screens>
oder<compatible-screens>
- API-Ebene
Verwenden Sie dazu das Element
<uses-sdk>
. - CPU-Architektur (ABI)
Dazu müssen Sie native Bibliotheken einbinden, die mit dem Android NDK erstellt wurden und auf eine bestimmte CPU-Architektur ausgerichtet sind (z. B. ARM EABI v7 oder x86).
Alle anderen Filter funktionieren weiterhin wie gewohnt. Diese vier Filter sind jedoch die einzigen, mit denen sich ein APK von einem anderen innerhalb desselben App-Eintrags bei Google Play unterscheiden lässt. Sie können beispielsweise nicht mehrere APKs für dieselbe Anwendung veröffentlichen, wenn sich die APKs nur dadurch unterscheiden, ob das Gerät eine Kamera hat.
Achtung:Das Veröffentlichen mehrerer APKs für dieselbe Anwendung gilt als erweiterte Funktion. Für die meisten Anwendungen sollte nur ein APK veröffentlicht werden, das eine Vielzahl von Gerätekonfigurationen unterstützt. Wenn Sie mehrere APKs veröffentlichen möchten, müssen Sie bestimmte Regeln in Ihren Filtern einhalten und die Versionscodes für jedes APK besonders sorgfältig prüfen, um für jede Konfiguration ordnungsgemäße Updatepfade zu gewährleisten.
Weitere Informationen zum Veröffentlichen mehrerer APKs bei Google Play finden Sie unter Unterstützung für mehrere APKs.