Screen Density: Pixel-Dichte in Android verstehen

Autor: IT Sectr Veröffentlicht: 2026-02-25 Lesezeit: 6 Min.

Wir erklären das Wesen von Screen Density (Density Buckets) in Android — die Klassifizierung von Bildschirmen nach Pixeldichte: mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi. Screen Density bestimmt, wie viele physische Pixel in einen Zoll Bildschirm passen, und beeinflusst direkt, wie Bilder und Oberflächen auf verschiedenen Geräten dargestellt werden. Laut Google Android Compatibility Definition (2025) unterstützt Android 6 Haupt-Density-Buckets und bis zu 8 zusätzliche für faltbare Geräte.

Wichtige Erkenntnisse

  • Screen Density — die Anzahl physischer Pixel pro Zoll (PPI). Android gruppiert Bildschirme in Density Buckets: mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi.
  • Der Basis-Bucket ist mdpi (160 dpi). Alle anderen werden relativ dazu berechnet: hdpi = 1.5×, xhdpi = 2×, xxhdpi = 3×, xxxhdpi = 4×.
  • Ressourcen für verschiedene Dichten werden in qualifizierten Ordnern res/drawable-{density} gespeichert.
  • Laut Android Studio (2025) ist die häufigste Dichte auf modernen Geräten xxhdpi (420+ dpi, 3×).
  • Screen Density hängt nicht von der Bildschirmauflösung ab — zwei Geräte mit gleicher Auflösung können unterschiedliche Dichten haben.

Was ist Screen Density?

Screen Density ist die Anzahl physischer Pixel pro Zoll Bildschirm (ppi — Pixel pro Zoll, oder dpi — Punkte pro Zoll). Android verwendet das Konzept der Density Buckets — Gruppen von Bildschirmen mit ähnlicher Dichte, die dieselben Skalierungsfaktoren verwenden. Im Gegensatz zur Auflösung (Anzahl der Pixel in Breite und Höhe) bestimmt die Dichte die physische Größe eines Pixels auf dem Bildschirm. Laut Google Pixel Team (2025) beträgt die Dichte moderner Flaggschiffe 450-550 ppi, was dem Bucket xxhdpi-xxxhdpi entspricht.

Geschichte und Entwicklung der Density Buckets

Das Density-Bucket-System erschien in Android 1.6 Donut (2009) mit den ersten Geräten mit 160 dpi (mdpi). Mit steigenden Bildschirmauflösungen wurden neue Buckets hinzugefügt: hdpi (Android 1.6), xhdpi (Android 2.3), xxhdpi (Android 4.1), xxxhdpi (Android 4.4). Jeder neue Bucket spiegelte eine 1.5× oder 2× Zunahme der Dichte gegenüber dem vorherigen wider. Laut Android Open Source Project (2025) haben jetzt 96% der aktiven Android-Geräte Dichten im Bereich von hdpi bis xxxhdpi.

Density Buckets: mdpi, hdpi, xhdpi, xxhdpi, xxxhdpi

Density Buckets sind von Google definierte Dichtebereiche zur Gruppierung von Android-Bildschirmen. Der Basis-Bucket ist mdpi (160 dpi). Der Skalierungsfaktor zeigt, wie viel größer eine Ressource für einen bestimmten Bucket im Vergleich zu mdpi ist. Beispielsweise bedeutet xhdpi (2×), dass das Bild in Breite und Höhe 2-mal größer sein muss als seine mdpi-Version. Laut Android Studio Resource Manager (2025) ist xxhdpi der häufigste Bucket unter aktiven Geräten (38% Marktanteil), gefolgt von xhdpi (28%).

BucketDPI-BereichSkalierungGerätebeispielMarktanteil (2025)
ldpi120 dpi0.75×Alte Budget-GeräteWeniger als 1%
mdpi120-160 dpiHTC Dream (G1), 7"-Tablets3%
hdpi160-240 dpi1.5×Samsung Galaxy S2, Nexus 412%
xhdpi240-320 dpiGoogle Nexus 5, Moto G28%
xxhdpi320-480 dpiSamsung Galaxy S8, Pixel 338%
xxxhdpi480-640 dpiSamsung Galaxy S24 Ultra, Pixel 9 Pro18%

Pixeldichte vs Bildschirmauflösung: Was ist der Unterschied

Bildschirmauflösung ist die Gesamtzahl der Pixel in Breite und Höhe (z. B. 1080×2400). Bildschirmdichte ist die Anzahl der Pixel pro Zoll. Zwei Geräte mit derselben Auflösung können unterschiedliche Dichten haben, wenn sich ihre physischen Bildschirmgrößen unterscheiden. Beispielsweise hat ein 6-Zoll-Telefon mit einer Auflösung von 1080×2400 eine Dichte von etwa 440 dpi (xxhdpi), während ein 5-Zoll-Telefon mit derselben Auflösung etwa 530 dpi (xxxhdpi) hat. Dies ist ein entscheidender Unterschied: Die Oberfläche sollte sich nicht an die Auflösung, sondern an die Dichte anpassen, sonst sind Elemente auf Geräten mit hoher Dichte zu klein.

Dichte-Ressourcen-Qualifier in Android

Android verwendet Qualifier in den res-Ordnernamen, um Ressourcen für eine bestimmte Bildschirmdichte zu laden: drawable-mdpi, drawable-hdpi, drawable-xhdpi, drawable-xxhdpi, drawable-xxxhdpi. Beim Start der Anwendung wählt Android Ressourcen aus dem Ordner aus, der am besten zur Gerätedichte passt. Bei keiner genauen Übereinstimmung verwendet das System den nächstgelegenen Bucket oder skaliert eine Ressource aus einer niedrigeren Dichte. Laut Android Docs (2025) werden für Vektorgrafiken (VectorDrawable) keine Dichte-Qualifier benötigt — sie werden automatisch skaliert.

XML

/res/
    drawable-mdpi/
        icon_app.png  (48x48 px)
    drawable-hdpi/
        icon_app.png  (72x72 px)
    drawable-xhdpi/
        icon_app.png  (96x96 px)
    drawable-xxhdpi/
        icon_app.png  (144x144 px)
    drawable-xxxhdpi/
        icon_app.png  (192x192 px)

In dieser Struktur enthält jeder Ordner dasselbe Symbol, jedoch in einer anderen physischen Pixelgröße. Die Basisgröße von 48×48 Pixeln für mdpi wird mit dem Skalierungsfaktor für jeden Bucket multipliziert. Android wählt automatisch die richtige Datei basierend auf DisplayMetrics.density des Geräts aus. Für VectorDrawable (XML-Format) reicht eine einzelne Datei in drawable/ — das System skaliert sie ohne Qualitätsverlust.

Pixelberechnung für jede Dichte

Die Größenberechnung eines Bildes für jede Dichte basiert auf einer einfachen Formel: Größe in mdpi × Skalierungsfaktor. Wenn ein Symbol in mdpi 48×48 px groß ist, dann ist es für hdpi 72×72 px (48 × 1.5), für xhdpi — 96×96 px (48 × 2), für xxhdpi — 144×144 px (48 × 3), für xxxhdpi — 192×192 px (48 × 4). Laut Material Design Guidelines (2025) gilt diese Formel für alle Raster-Ressourcen: Symbole, Hintergründe, Bilder und 9-patch.

BucketSkalierungmdpi-Größe (px)Bucket-Größe (px)
mdpi48×4848×48
hdpi1.5×48×4872×72
xhdpi48×4896×96
xxhdpi48×48144×144
xxxhdpi48×48192×192

Bewährte Praktiken zur Ressourcenvorbereitung für alle Dichten

Die richtige Vorbereitung von Ressourcen für Density Buckets umfasst fünf Schlüsselregeln. Erstens: Verwenden Sie VectorDrawable für einfache Symbole — dies macht fünf Kopien überflüssig. Zweitens: Exportieren Sie für Rasterbilder alle Dichten aus den Design-Tools (Android Studio Asset Studio generiert sie automatisch). Drittens: Vermeiden Sie es, Bilder ohne Qualifier in drawable/ zu platzieren — das System skaliert sie mit Qualitätsverlust. Viertens: Testen Sie auf einem Gerät mit einer anderen Dichte als Ihrem Hauptgerät — der Emulator erlaubt das Ändern der Dichte. Fünftens: Verwenden Sie WebP statt PNG — laut Google (2025) bietet WebP eine 25-35% kleinere Größe bei gleicher Qualität.

  • VectorDrawable — das bevorzugte Format für Symbole und einfache Illustrationen. Eine XML-Datei ersetzt 5 PNGs.
  • Android Studio Asset Studio — automatische Generierung von Ressourcen für alle Dichten aus SVG oder PNG.
  • WebP mit Lossless — das optimale Format für Fotos. 30% kleiner als PNG ohne Qualitätsverlust.
  • 9-patch — für skalierbare Hintergründe. Eine Datei funktioniert bei allen Dichten mit korrekter Konfiguration der Dehnungsbereiche.
  • Adaptive Icons — Symbolformat für API 26+. Ermöglicht die separate Festlegung von Vorder- und Hintergrund für verschiedene Dichten.

Häufig gestellte Fragen

Was bedeutet mdpi in Android?

mdpi (medium-density pixel-independent) — der Basis-Density-Bucket in Android mit einer Dichte von 160 dpi. Alle anderen Buckets werden relativ zu mdpi berechnet: hdpi — 1.5×, xhdpi — 2× und so weiter. mdpi entspricht einem physischen Pixel pro dichteunabhängigem Pixel (dp). Designer verwenden mdpi als Referenz beim Erstellen von Layouts.

Wie finde ich die Bildschirmdichte eines Android-Geräts heraus?

Verwenden Sie DisplayMetrics: getResources().getDisplayMetrics().density gibt den Skalierungsfaktor zurück (1.0 für mdpi, 3.0 für xxhdpi). Zur programmatischen Bestimmung des Buckets rufen Sie getResources().getConfiguration().densityDpi auf. Android Studio hat auch einen Device Explorer, der densityDpi für verbundene Geräte anzeigt.

Kann man auf die Vorbereitung von Ressourcen für alle Dichten verzichten?

Technisch gesehen — ja, aber mit Qualitätsverlust. Wenn eine Ressource nur in drawable-xxhdpi vorhanden ist, wird sie auf einem mdpi-Gerät um das 3-fache verkleinert — das Bild wird unscharf. Wenn die Ressource nur in mdpi vorhanden ist, wird sie auf xxhdpi vergrößert — Pixelbildung. Empfohlen wird die Vorbereitung mindestens für xhdpi, xxhdpi und xxxhdpi — das deckt 84% der aktiven Geräte (2025) ab. Für VectorDrawable reicht eine einzelne Datei ohne Qualifier aus.

Zusammenfassung

  • Screen Density — die Anzahl physischer Pixel pro Zoll (dpi/ppi). Android gruppiert Bildschirme in Density Buckets: mdpi (1×), hdpi (1.5×), xhdpi (2×), xxhdpi (3×), xxxhdpi (4×).
  • Der Basis-Bucket mdpi = 160 dpi. Alle anderen werden als mdpi × Skalierungsfaktor berechnet.
  • Ressourcen für verschiedene Dichten werden in qualifizierten Ordnern res/drawable-{bucket} gespeichert.
  • xxhdpi — der häufigste Bucket (38%), gefolgt von xhdpi (28%) und xxxhdpi (18%).
  • VectorDrawable ersetzt 5 Raster-Dateien und skaliert ohne Qualitätsverlust.
  • Verwenden Sie WebP statt PNG, um 30% Traffic und Speicherplatz zu sparen.

Wir entwickeln eine mobile Applikation schlüsselfertig

IT Sectr entwickelt seit 2017 iOS- und Android-Apps für Startups und Unternehmen. Wir beraten Sie und schlagen die beste Lösung vor.

Projekt besprechen

Lesen Sie auch