Ab API 26 verwendet Android so genannte adaptive Symbole.
Bei Ausrichtung auf API 25 und niedriger sieht das Symbol meiner App gut aus:
Bei der Ausrichtung auf API 26+ wird dies jedoch in einem weißen Kreis angezeigt:
- Wie kann ich API 26+ ausrichten, während ich die adaptiven Symbole von Android verwende?
- Was ist, wenn ich auf API 26+ abzielen möchte, aber nicht die adaptiven Symbole von Android verwende?
Antworten:
Wie kann ich API 26+ ausrichten, während ich die adaptiven Symbole von Android verwende?
In Ihren Player-Einstellungen unter Android in Unity 2018 oder höher befindet sich im Abschnitt "Symbole" eine Stelle, an der Sie Ihre Symbole festlegen können. Sie können Legacy-, Round- und Adaptive-Symbole festlegen. Die Legacy- und Round-Symbole gelten für API 25 und niedriger. Fügen Sie einfach das gewünschte Symbol hinzu, Alpha und alles, und fertig. Die adaptiven Symbole für API 26+ sind etwas komplizierter.
Adaptive Icons bestehen aus zwei Teilen. Der Hintergrund und der Vordergrund .
Hintergrund
Im Hintergrund legen Sie den Hintergrund für Ihr Symbol fest. Dieses Bild darf kein Alpha enthalten. Sie sollte kontinuierlich sein, da Sie nicht steuern können, welche Teile des Hintergrunds angezeigt werden.
Android bestimmt das Zuschneiden und Übersetzen des Hintergrundbildes. Im folgenden Beispiel ist der Hintergrund ein blaues Bild mit einem weißen Gitter. Beachten Sie, dass der Hintergrund gut aussieht, obwohl das Quadrat in einen Kreis geschnitten und der Hintergrund verschoben wird.
Vordergrund
Der Vordergrund ist Ihr aktuelles Symbol. Alpha wird für dieses Bild benötigt. Das äußere 1/6 Ihres Bildes ist möglicherweise hinter dem Zuschneiden verborgen. Das heißt, das Bild muss auf 66,67% oder die Originalgröße verkleinert werden, während die Leinwand die volle Größe beibehält. Im folgenden Beispiel hat das Bild eine Größe von 432 x 432 Pixel. Links, rechts, oben und unten im Bild befinden sich jedoch jeweils 72 Pixel Transparenz.
Das Endergebnis von 66,67% Skalierung des Bildes füllt das Sprite perfekt innerhalb des Kreises aus, während der Hintergrund hinter transparenten Pixeln angezeigt wird.
Auf verschiedenen Geräten konnte das Symbol außerhalb des zugeschnittenen Bereichs verschoben werden, da kein Puffer vorhanden war. Im blauen Symbol oben beträgt der Vordergrund beispielsweise ungefähr 35% der Originalgröße. Wenn es 66,67% der ursprünglichen Größe wäre, würde das Android-Gesicht aus der Sicht rutschen.
Beispiel
Wenn dies also unser Hintergrund und Vordergrund wäre, so dass der Inhalt unseres Vordergrunds 2/3 der Größe unseres Hintergrunds entspricht:
Dann ist dies die unbeschnittene Version unseres Icons:
Was wir aber tatsächlich auf dem Gerät sehen konnten (vorausgesetzt, Android macht im Moment nichts "Adaptives"), ist Folgendes:
Was ist, wenn ich auf API 26+ abzielen möchte, aber nicht die adaptiven Symbole von Android verwende?
Du kannst nicht.
Ich verstehe immer noch nicht.
Vielleicht kann Android oder Unity es besser erklären.
quelle