Google hat die zweite Beta-Version der offenen mobilen Plattform Android 12 vorgestellt. Die Veröffentlichung von Android 12 wird im dritten Quartal 2021 erwartet. Zur Bewertung der neuen Funktionen der Plattform wurde ein Programm für vorläufige Tests angeboten. Die Firmware-Bauten wurden für die Geräte Pixel 3 / 3 XL, Pixel 3a / 3a XL, Pixel 4 / 4 XL, Pixel 4a / 4a 5G und Pixel 5 vorbereitet. Für die Nutzer, die die erste Testversion installiert haben, steht ein OTA-Update zur Verfügung.
Wesentliche Neuerungen in Android 12:
- Es wurde die Möglichkeit hinzugefügt, die Benutzeroberflächenelemente an Geräte mit abgerundeten Bildschirmen anzupassen. Entwickler können jetzt Informationen über die Rundungen des Bildschirms abrufen und die Benutzeroberflächenelemente entsprechend den unsichtbaren Ecken anpassen. Über die neue API RoundedCorner können Parameter wie Radius und Mittelpunkt der Rundung ermittelt werden, und über Display.getRoundedCorner() sowie WindowInsets.getRoundedCorner() können die Koordinaten jeder abgerundeten Ecke des Bildschirms festgestellt werden.

- Der verbesserten Bild-in-Bild-Modus (PIP) sorgt für eine flüssigere Übergangseffekte. Bei aktivierter automatischer PIP-Aktivierung durch die Gesten up-to-home (Bildschirmunterseite nach oben wischen) wechselt die Anwendung nun sofort in den PIP-Modus, ohne auf das Ende der Animation zu warten. Das Ändern der Größe von PIP-Fenstern mit Inhalten, die sich vom Video unterscheiden, wurde verbessert. Es ist jetzt möglich, das PIP-Fenster durch Ziehen an den linken oder rechten Bildschirmrand zu verbergen. Das Verhalten beim Berühren des PIP-Fensters wurde geändert – ein Tap zeigt nun die Steuerungstasten an, während ein Doppeltap die Größe des Fensters ändert.
- Ein neuer API CompanionDeviceService wurde hinzugefügt, mit dem Anwendungen, die begleitende Geräte wie Smartwatches und Fitness-Tracker verwalten, aktiviert werden können. Die API löst das Problem des Startens und Verbindens erforderlicher Anwendungen, wenn ein begleitendes Gerät in der Nähe erscheint. Das System aktiviert den Dienst, wenn das Gerät in der Nähe ist, und sendet eine Benachrichtigung, wenn das Gerät getrennt wird oder in den Sichtbereich hinein oder hinausgeht. Anwendungen können ebenfalls das neue Profil für begleitende Geräte nutzen, um die Einrichtung der Berechtigungen zur Verbindung mit dem Gerät zu vereinfachen.
- Das System zur Vorhersage der Bandbreite wurde verbessert. Anwendungen können jetzt Informationen über die voraussichtliche Gesamtbandbreite in Bezug auf den Betreiber, ein spezifisches WLAN-Netzwerk (Wi-Fi SSID), den Netztyp und das Signalniveau anfordern.
- Die Anwendung typischer visueller Effekte wie Unschärfe und Farbveränderungen wurde vereinfacht. Diese Effekte können jetzt über die API RenderEffect auf jedes RenderNode-Objekt oder auf den gesamten sichtbaren Bereich angewendet werden, auch in Kombination mit anderen Effekten. Diese Funktion ermöglicht es beispielsweise, ein durch ImageView dargestelltes Bild unscharf zu machen, ohne dass eine explizite Kopie, Bearbeitung oder Ersetzung des Bitmaps erforderlich ist, da diese Schritte von der Plattform übernommen werden. Zusätzlich wurde die API Window.setBackgroundBlurRadius() eingeführt, mit der der Hintergrund eines Fensters mit einem matten Glaseffekt verschwommen werden kann, wodurch die Tiefe durch das Unschärfen des umgebenden Raums hervorgehoben wird.

- Es wurden Werkzeuge zur Rekodierung von Multimedia-Streams integriert. Diese können in Umgebungen verwendet werden, in denen eine Anwendung zur Kameranutzung Video im HEVC-Format speichert, um die Kompatibilität mit Anwendungen zu gewährleisten, die dieses Format nicht unterstützen. Für solche Anwendungen wurde eine Funktion zur automatischen Rekodierung in das verbreitetere AVC-Format hinzugefügt.
- Unterstützung des AVIF-Bildformats (AV1 Image Format) hinzugefügt, das Technologien der intra-frame Kompression aus dem Video-Encoding-Format AV1 verwendet. Der Container für die Verbreitung der komprimierten Daten im AVIF ist vollständig identisch mit HEIF. AVIF unterstützt sowohl HDR-Bilder (High Dynamic Range) und den Farbraum Wide-gamut als auch Standard-Dynamikbereich (SDR).
- Um mögliche Leistungsprobleme zu vermeiden, dürfen Anwendungen in den Hintergrunddiensten (Foreground-Service) keine priorisierten Dienste während des Hintergrundbetriebs starten, mit einigen wenigen Ausnahmen. Es wird empfohlen, für Aufgaben im Hintergrund den WorkManager zu verwenden. Um den Übergang zu erleichtern, wurde ein neuer Aufgabentyp im JobScheduler eingeführt, der sofort gestartet wird, eine höhere Priorität hat und Netzwerkzugang bietet.
- Ein einheitliches API OnReceiveContentListener zur Einfügung und zum Austausch zwischen Anwendungen für erweiterte Inhaltsarten (formatierten Texten, Bildern, Videos, Audiodateien usw.) unter Verwendung verschiedener Datenquellen, einschließlich Zwischenablage, Tastatur und Drag-and-Drop-Interface, vorgeschlagen.
- Ein durch den in Smartphones integrierten Vibrationsmotor umsetzbarer haptischer Feedback-Effekt hinzugefügt, dessen Frequenz und Intensität von den Eigenschaften des aktuell wiedergegebenen Sounds abhängen. Dieser neue Effekt ermöglicht es, den Klang physisch zu spüren und kann verwendet werden, um Spielen und Audioanwendungen zusätzliche Realität zu verleihen.
- Im immersiven Modus wird die Anwendung im Vollbildmodus angezeigt, wobei die Arbeitsleisten ausgeblendet werden, um die Navigation mithilfe von Gesten zu vereinfachen. Beispielsweise können Sie in Leseanwendungen, bei der Videoanzeige und der Fotobearbeitung jetzt mit einer Wischgeste navigieren.
- Das Design der Benachrichtigungsoberfläche wurde aktualisiert, um einfacher und funktionaler zu sein. Außerdem wurden die Animations- und Übergangseffekte verbessert und flüssiger gestaltet. Die Benachrichtigungen mit vom App bereitgestellten Inhalten wurden ebenfalls optisch angepasst.
- Die Reaktionsgeschwindigkeit und das Antwortverhalten im Umgang mit Benachrichtigungen wurden verbessert. Beispielsweise erfolgt bei Berührung einer Benachrichtigung nun ein sofortiger Übergang zur zugehörigen Anwendung. In den Anwendungen ist die Verwendung von Zwischenbenachrichtigungs-Handlern (notification trampoline) eingeschränkt.
- Die IPC-Aufrufe im Binder wurden optimiert. Durch die Implementierung einer neuen Cache-Strategie und die Beseitigung von Konflikten bei Sperren konnten die Verzögerungen erheblich reduziert werden. Insgesamt hat sich die Leistung der Binder-Aufrufe ungefähr verdoppelt, wobei in einigen Bereichen sogar noch deutlichere Verbesserungen erzielt werden konnten. So wurde der Aufruf von refContentProvider() 47 Mal schneller, releaseWakeLock() 15 Mal schneller und JobScheduler.schedule() 7,9 Mal schneller.
- Im Rahmen des Mainline-Projekts, das es ermöglicht, einzelne Systemkomponenten zu aktualisieren, ohne die gesamte Plattform zu aktualisieren, wurden neue aktualisierbare Systemmodule entwickelt, die zu den 22 Modulen in Android 11 hinzukommen. Die Updates betreffen hardwareunabhängige Komponenten, die über Google Play getrennt von den OTA-Firmware-Updates des Herstellers heruntergeladen werden. Zu den neuen Modulen, die über Google Play aktualisiert werden können, ohne die Firmware zu aktualisieren, gehören ART (Android Runtime) und ein Modul für die Videokodierung.
- Sicherheit und Datenschutz.
- Anwendungsentwickler haben die Möglichkeit, Warn-Pop-ups, die Inhalte überlagern, zu deaktivieren. Zuvor wurde die Anzeige überlagernder Fenster durch Berechtigungsanfragen geregelt, die während der Installation der überlagernden Fenster-Anwendungen bestätigt wurden. Es gab keine Werkzeuge, um auf die Überlagerungen von Inhalten durch diese Anwendungen einzuwirken. Mit dem Aufruf von Window#setHideOverlayWindows() werden nun alle Fenster, die den Inhalt überlagern, automatisch ausgeblendet. Beispielsweise kann das Ausblenden aktiviert werden, wenn besonders wichtige Informationen angezeigt werden, wie z.B. die Bestätigung einer Transaktion.
- Anwendungen erhalten zusätzliche Einstellungen zur Einschränkung von Benachrichtigungsoperationen während der Bildschirmsperre. Zuvor konnte lediglich die Sichtbarkeit von Benachrichtigungen während der Sperre gesteuert werden. Jetzt ist es möglich, eine verbindliche Authentifizierung für alle Aktionen mit Benachrichtigungen während der Bildschirmsperre zu aktivieren. Beispielsweise kann eine Messaging-App verlangen, dass Sie sich authentifizieren, bevor Sie eine Nachricht löschen oder als gelesen markieren.
- Die API PackageManager.requestChecksums() wurde hinzugefügt, um die Prüfziffern von installierten Anwendungen anzufordern und zu überprüfen. Unterstützte Algorithmen sind unter anderem SHA256, SHA512 und Merkle Root.
- Im Web-Engine WebView wurde die Möglichkeit implementiert, das Attribut SameSite zur Steuerung der Cookie-Verarbeitung zu verwenden. Der Wert „SameSite=Lax“ schränkt das Senden von Cookies für Cross-Site-Subanfragen ein, wie z. B. das Anfordern von Bildern oder das Laden von Inhalten über iframes von anderen Websites. Im Modus „SameSite=Strict“ werden Cookies bei sämtlichen Arten von Cross-Site-Anfragen, einschließlich aller eingehenden Links von externen Websites, nicht gesendet.
- Die Arbeit an der Randomisierung von MAC-Adressen wurde fortgesetzt, um die Möglichkeit der Verfolgung von Geräten beim Anschluss an ein drahtloses Netzwerk auszuschließen. Für unprivilegierte Anwendungen ist der Zugriff auf die MAC-Adresse des Geräts eingeschränkt, und bei Aufruf der Funktion getHardwareAddress() wird jetzt ein leerer Wert zurückgegeben.
Quelle: opennet.ru


