Anzeigeeinstellungen#

There are two variables that set the content scaling for Lomiri and Ubuntu Touch applications: GRID_UNIT_PX and QTWEBKIT_DPR.

There are also other options available that may be useful for you depending on your device’s form factor. These are mentioned below and explained in depth in the section on display settings.

Alle diese Einstellungen werden von Unity 8 selbst ermittelt, wenn keine eingestellt sind. Es gibt jedoch viele Fälle, in denen die Erkennung falsch ist (zum Beispiel werden Telefondisplays mit sehr hoher Auflösung als Desktop-Computer erkannt). Um manuell einen Wert für diese Variablen zu setzen, editieren Sie einfach die Datei etc/ubuntu-touch-session.d/android.conf und geben Sie diese an. Dies ist zum Beispiel die Datei für das Nexus 7 Tablet:

$ cat /etc/ubuntu-touch-session.d/flo.conf
GRID_UNIT_PX=18
QTWEBKIT_DPR=2.0
NATIVE_ORIENTATION=landscape
FORM_FACTOR=tablet

The method for deriving values for these variables is explained below.

Once you have adjusted the android.conf file to the display settings needed for your device, this file should be incorporated into your build. Follow the overlay file method corresponding to your Halium version.

Bemerkung

This way of configuration is considered legacy and will be replaced by DeviceInfo in the future. For migration purposes please set both configurations (android.conf as well as DeviceInfo).

Determining the correct display settings#

Anzeigeskalierung#

GRID_UNIT_PX (Pixel pro Gittereinheit oder Px/GU) ist gerätespezifisch. Das Ziel ist, dass das Systems und die Anwendungen vom Nutzer immer gleich wahrgenommen werden, unabhängig vom Gerät, auf dem sie angezeigt werden. Dies hängt in erster Linie von der Pixeldichte des Gerätebildschirms und des Abstands des Geräts vom Nutzer ab. Letzteres kann nicht automatisch ermittelt werden und basiert auf Heuristiken. Man nimmt an, dass Tablets und Klapprechner den gleichen Nutzerabstand haben und dass sie üblicherweise 1,235 mal weiter als Telefone gehalten werden.

QTWEBKIT_DPR legt die Anzeigeskalierung für die Oxide-Webengine fest. Dieser Wert beeinflusst die Skalierung im Browser und in Webapps.

Es wurde ein Referenzgerät ausgewählt, aus dem wir die Werte für alle anderen Geräte ableiten. Das Referenzgerät ist ein Laptop mit einem 120ppi Bildschirm. Es gibt jedoch keine genaue Formel, da diese Optionen auf wahrgenommene Größe und nicht auf physische Größe eingestellt sind. Hier sind einige Werte für andere Geräte, so dass Sie die richtigen für Ihre Geräte ableiten können:

Gerät

Auflösung

Bildschirmgröße

PPI

Px/GU

QtWebKit DPR

‚Normale‘ Dichte Klapprechner

Nicht verfügbar

Nicht verfügbar

96-150

8

1.0

ASUS Nexus 7

1280x800

7“

216

12

2.0

‚Hohe‘ Dichte Klapprechner

Nicht verfügbar

Nicht verfügbar

150-250

16

1.5

Samsung Galaxy Nexus

1280x720

4.65“

316

18

2.0

LG Nexus 4

1280x768

4.7“

320

18

2.0

Samsung Nexus 10

2560x1600

10.1“

299

20

2.0

Fairphone 2

1080x1920

5“

440

23

2.5

LG Nexus 5

1080x1920

4.95“

445

23

2.5

Am besten experimentiert man etwas mit den Werten, um herauszufinden, welche sich gut anfühlen, verglichen mit dem Nutzererlebnis auf anderen Geräten. Ist man sich unsicher, was am besten ist, kann man den UBports-Entwicklern Bilder schicken, auf denen Vergleichsobjekte zu sehen sind.

Es gibt zwei weitere Einstellungen, die interessant sein können:

Formfaktor#

FORM_FACTOR gibt den Formfaktor des Geräts an. Dieser Wert wird als das Chassis des Gerätes festgelegt, das Sie durch Ausführen von hostnamectl finden können. Die zulässigen Werte sind handset, tablet, laptop und desktop. Anwendungen wie die Galerie nutzen diese Informationen, um ihre Funktionalität zu ändern. Weitere Informationen über das Chassis finden Sie in der freedesktop.org hostnamed Spezifikation.

Native Orientierung#

NATIVE_ORIENTATION legt die Bildschirmorientierung für den eingebauten Bildschirm fest. Dieser Wert wird genutzt, wenn die automatische Drehung nicht richtig funktioniert oder wenn Apps die Orientierung auf die native Orientierung festlegen wollen. Akzeptable Werte sind landscape, welches für gewöhnlich für Tablets, Klapprechner und Desktops, und portrait, welches für gewöhnlich für Telefone verwendet wird.