Das Unternehmen Google hat die zweite Testversion der offenen mobilen Plattform Android 15 vorgestellt. Die Veröffentlichung von Android 15 wird im dritten Quartal 2024 erwartet. Um die neuen Funktionen der Plattform zu bewerten, wurde ein Programm zur frühzeitigen Testung angeboten. Firmware-Builds wurden für die Geräte Pixel 6/6a/6 Pro, Pixel 7/7a/7 Pro, Pixel 8/8a/8 Pro, Pixel Fold und Pixel Tablet vorbereitet.
Änderungen in der Android 15 Developer Preview 2 im Vergleich zur ersten Vorschau:
- Für Anwendungen wurde die Möglichkeit hinzugefügt, kleine Hilfsbildschirme (Cover screens) zu nutzen, die einige faltbare Smartphones wie das Samsung Galaxy Z Flip ausgestattet haben. Beispielsweise ermöglicht der Hilfsbildschirm ein schnelles Annehmen von Anrufen, Antworten auf Nachrichten, Steuerung der Kamera und weitere Aktionen, ohne das Gerät zu öffnen.

- Im TextView-Widget ist standardmäßig das Attribut elegantTextHeight aktiviert, wodurch anstelle einer kompakten Schriftart Schriftarten mit größeren vertikalen Abständen verwendet werden, die die Lesbarkeit des Textes verbessern.


- Die Funktionen für den Betrieb über Satellitenkommunikationskanäle wurden erweitert. Neue Benutzeroberflächenelemente wurden hinzugefügt, um die Nutzung der Satellitenkommunikation zu vereinheitlichen. Anwendungen erhalten die Möglichkeit, den Einsatz des Satellitenkanals über die Methode ServiceState.isUsingNonTerrestrialNetwork() zu bestimmen. In der Schnittstelle für die Arbeit mit SMS/MMS wurde die Unterstützung für das Senden und Empfangen von Nachrichten über Satellitenkanäle implementiert.

- Es wurden Arbeiten zur Vereinfachung der Nutzung von NFC-fähigen Telefonen für kontaktloses Bezahlen (tap to pay) durchgeführt. Anwendungen haben die Möglichkeit, den NFC-Adapter in den Überwachungsmodus zu versetzen, in dem das Gerät NFC-Anfragen entgegennimmt und zur Verarbeitung an einen festgelegten Prozess sendet, jedoch nicht antwortet oder Daten an NFC-Leser überträgt.
- Die Möglichkeiten zur Darstellung von PDF-Dokumenten wurden erheblich erweitert (API PdfRenderer). Beispielsweise wurden Mittel zur Darstellung von passwortgeschützten Dateien, zur Anzeige von Anmerkungen, zur Bearbeitung von Formularen, zur Suche im Dokument und zur Auswahl von Bereichen zum Kopieren über die Zwischenablage bereitgestellt. Es wurden Optimierungen hinzugefügt, die den Ressourcenverbrauch reduzieren und die Anzeige von lokalen PDF-Dateien beschleunigen. Die Implementierung der API PdfRenderer wurde in ein separates Modul ausgegliedert, das über Google Play aktualisiert wird und nicht an die Hauptplattform gebunden ist.

- Die Möglichkeiten zur automatischen Spracherkennung und zum Sprachenwechsel wurden verbessert. Anwendungen haben erweiterte Optionen zur Feinabstimmung des Sprachenwechsels während der Spracherkennung erhalten. Beispielsweise ermöglicht der Modus EXTRA_LANGUAGE_SWITCH_INITIAL_ACTIVE_DURATION_TIME_MILLIS den Wechsel nur zu Beginn der Audio-Sitzung, während der Modus EXTRA_LANGUAGE_SWITCH_MATCH_SWITCHES den Sprachenwechsel nach einer bestimmten Anzahl von Wechseln aufhebt, was in Situationen nützlich sein kann, in denen im Voraus bekannt ist, dass in einer Sitzung nur eine Sprache verwendet wird.
- Es wurden Mittel für das flexible Management von Zeilenumbrüchen bereitgestellt. Im TextView-Widget können zur Verbesserung der Lesbarkeit mithilfe der Tags und der Umbruch von Wortgruppen oder Wortteilen auf eine andere Zeile gesteuert werden. Beispielsweise wird in der Zeile "The power and brains behind Pixel 8 Pro." der Ausdruck "Pixel 8 Pro" immer in einer Zeile angezeigt.


- Die Möglichkeiten zur Filterung von Intent-Anfragen wurden erweitert. Mit der Klasse UriRelativeFilterGroup können Regeln für das Blockieren oder Zulassen von Anfragen basierend auf dem Inhalt der URL-Parameter und URL-Fragmente festgelegt werden. Filterregeln können auch über das neue Tag im Manifest der Anwendung definiert werden.
- Die Unterstützung der OpenJDK-API wurde erweitert. Beispielsweise wurde die Unterstützung zusätzlicher Methoden der Klassen Math und StrictMath, sortierter Sammlungen und Listen sowie die Verwendung von ByteBuffer in Deflater und Schlüsselerneuerungen hinzugefügt.
- Eine API wurde hinzugefügt, die es Anwendungen ermöglicht, die Bildschirmaufnahme zu bestimmen. Die Anwendung kann einen Callback-Handler festlegen, der aufgerufen wird, wenn die Bildschirmaufnahme aktiviert ist und das Anwendungsfenster im sichtbaren Bereich erscheint. Diese Möglichkeit erlaubt es, den Benutzern Warnungen bei der Aufnahme vertraulicher Daten anzuzeigen.
- Die API ApplicationStartInfo wurde hinzugefügt, über die Informationen über den Zustand beim Programmstart abgerufen werden können. Beispielsweise lässt sich feststellen, ob die Anwendungsbestandteile zwischengespeichert sind (Zustände cold, warm oder hot), wie lange verschiedene Phasen des Starts dauerten, was den Start verursacht hat, und zudem werden Metriken bereitgestellt, die zur Optimierung der Startgeschwindigkeit nützlich sind.
- Die Verarbeitung des gestoppten Zustands wurde geändert, bei dem die Ausführung der Anwendung bis zu einer benutzerspezifischen Aktion angehalten wird. In der neuen Version werden Möglichkeiten bereitgestellt, dass die Anwendung das Beenden der Anhaltung erkennt: über die Verarbeitung der BOOT_COMPLETED-Nachricht oder die Verwendung der Methode ApplicationStartInfo.wasForceStopped().
- Neben der Methode StorageStats.getAppBytes(), die die Gesamtdaten zur Größe der installierten Anwendung bereitstellt, wurde die Methode StorageStats.getAppBytesByDataType() hinzugefügt, die die Möglichkeit bietet, separate Informationen zur Größe des APK-Pakets, des kompilieren Codes, sowie extrahierter und generierter Daten zu erhalten.
- Änderungen wurden an der API für das Starten von Vordergrunddiensten (Foreground Service) vorgenommen. Ein neuer Typ von Vordergrunddiensten – mediaProcessing – wurde hinzugefügt, der für ressourcenintensive Operationen mit multimedialen Inhalten, wie zum Beispiel der Umkodierung von einem Format in ein anderes, verwendet werden kann.
- Eine neue API für die Arbeit mit der auf SQLite-Datenbank basierenden Speicher-Engine wurde vorgeschlagen, die Zugriff auf die erweiterten Funktionen von SQLite bietet.
- Es wurde die Möglichkeit zur Steuerung des Helligkeitsreserves für HDR bereitgestellt (das Verhältnis des hellsten Weißtons in einem HDR-Bild zur Helligkeit des Weißtons in einem Bild im Standard-Dynamikbereich). Um das Helligkeitsreservoir einzustellen, wurde die Methode setDesiredHdrHeadroom hinzugefügt, mit der die Helligkeit beim Anzeigen von Inhalten in SDR und HDR ausgeglichen werden kann.

- Die Unterstützung des Standards CTA-2075 wurde hinzugefügt, der Möglichkeiten zur Lautstärkereglung definiert, die verhindern, dass sich die Lautstärke bei unterschiedlichem Inhalt ändert. Die Lautstärkegleichheit wird durch die Definition von Metadaten zu den Eigenschaften der Lautsprecher und der Lautstärke von AAC-Toninhalten erreicht. Zur Lautstärkekompression wurde das Objekt LoudnessCodecController und die Methode OnLoudnessCodecUpdateListener vorgeschlagen, die die Lautstärkeparameter vor dem Zugriff auf den Codec anpassen.
- In AndroidX media3 ExoPlayer 1.0 wird standardmäßig der Einsatz von räumlichem Sound für Mehrkanalton aktiviert, wenn räumlicher Sound auf dem Gerät unterstützt wird. Die Klasse Virtualizer wurde als veraltet erklärt, und stattdessen sollte die Klasse Spatializer verwendet werden, um das Verhalten und die Möglichkeiten des räumlichen Sounds zu bestimmen.
- Die Klasse AutomaticZenRules wurde hinzugefügt, die es Anwendungen ermöglicht, Regeln für den "Nicht Stören"-Modus festzulegen und die Situationen zu definieren, in denen diese Regeln angewendet werden sollen.

Quelle: opennet.ru








