Veröffentlichung der mobilen Plattform Android 17

Google hat eine offene mobile Plattform veröffentlicht. Android 17. Связанные с новым выпуском исходные тексты размещены в Git-репозитории проекта (ветка android-17.0.0_r1). Сборки прошивки подготовлены для устройств Pixel 6/6a/6 Pro, Pixel 7/7a/7 Pro, Pixel 8/8a/8 Pro, Pixel 9/9a/9 Pro/9 Pro XL/9 Pro Fold, Pixel 10/10 Pro/10 Pro XL/10 Pro Fold, Pixel Fold и Pixel Tablet. Предварительные сборки прошивок доступны для устройств HONOR, iQOO, Lenovo, OnePlus, OPPO, realme, Sharp, vivo и Xiaomi. В процессе формирования универсальные сборки GSI (Generic System Images), подходящие для разных устройств на базе архитектур ARM64 и x86_64.

Среди изменений (1, 2, 3):

  • Ein neuer Mehrfenstermodus namens „Bubbles“ wurde hinzugefügt. Er ermöglicht das Starten beliebiger Anwendungen in schwebenden Fenstern, ähnlich den Benachrichtigungen für Nachrichten („Bubbles“), jedoch ohne die Notwendigkeit einer speziellen API. Zum Öffnen einer Anwendung in einem schwebenden Fenster halten Sie das Anwendungssymbol gedrückt. Auf größeren Bildschirmen erscheinen die Symbole der schwebenden Fenster in einem separaten Bereich der Taskleiste. Diese Fenster lassen sich gruppieren, verschieben und an den Bildschirm anheften.

  • Die Plattformentwicklung für Geräte mit großen Bildschirmen, wie Tablets, Laptops, Desktop-Systeme und Smartphones mit faltbaren Bildschirmen, wurde fortgesetzt. Die zuvor verfügbaren Optionen zum Deaktivieren neuer Funktionen auf Geräten mit einer Bildschirmbreite von mehr als 600 Pixeln (dp) wurden entfernt. Diese Funktionen betrafen das Ignorieren bestimmter APIs zur Steuerung der Bildschirmgröße und -ausrichtung (screenOrientation, resizeableActivity, [min|max]AspectRatio) sowie die adaptive Platzierung von Anwendungen in skalierbaren und verschiebbaren Fenstern.

  • Die System-API „Eyedropper“ wurde hinzugefügt. Dadurch können Anwendungen Farbinformationen für jedes Pixel auf dem Bildschirm abrufen, ohne dass dafür Berechtigungen zur Bildschirmaufnahme erforderlich sind. Die Sicherheit wird gewährleistet, indem der Benutzer den zu erfassenden Bereich über eine plattformverwaltete Pipetten-Schnittstelle auswählt, die nicht von der Anwendung kontrolliert wird. Dies bedeutet, dass Anwendungen keine Informationen über ein bestimmtes Pixel anfordern oder den Bildschirminhalt Pixel für Pixel nachbilden können.

  • Добавлен системный интерфейс выбора контакта из адресной книги, доступ к которому предоставляется при получении полномочия ACTION_PICK_CONTACTS. Интерфейс позволяет обойтись без предоставления полномочия READ_CONTACTS, позволяющего прочитать все контактные данные. При вызове нового интерфейса пользователь принимает решение о том, какую именно информацию из адресной книги передать приложению с возможностью выбора только отдельных полей.

  • Die PhotoPickerUiCustomizationParams API wurde hinzugefügt, um die Benutzeroberfläche des Fotoauswahldialogs anzupassen und sie so besser an den Stil der aufrufenden Anwendung anzupassen. Beispielsweise können Sie das Seitenverhältnis der Fotominiaturen von 1:1 (quadratisch) auf 9:16 (Hochformat) ändern.

  • Die Berechtigung USE_LOCATION_BUTTON wurde hinzugefügt. Sie ermöglicht es Ihnen, eine Systemschaltfläche in die Benutzeroberfläche Ihrer App einzubetten, um Zugriff auf präzise Standortdaten zu gewähren. Die Schaltfläche wird vom System gerendert und gewährt dem Benutzer nach dem Anklicken Zugriff auf die Standortdaten – allerdings nur für die Dauer der aktuellen Sitzung.

  • Es wurde eine Einstellung hinzugefügt, mit der Sie die Anzeige der Anwendungsnamen unter ihren Symbolen ausblenden können.
  • Das Design der Symbolleiste für die Bildschirmaufzeichnung wurde geändert.

  • Добавлена поддержка экранных реакций (Screen Reactions), совмещающих запись видео с передней камеры с созданием скринкаста для наложения своих комментариев к действиям на экране.


  • Добавлен режим для игр на устройствах со складными экранами, при котором одна половина раскладного экрана используется для отображения игрового процесса, а другая для виртуального геймпада.

  • Die Handoff-API wurde hinzugefügt, mit der Sie den Status einer Anwendung an eine andere, nahegelegene Anwendung übertragen können. Android-Gerät (zum Beispiel ein Tablet) und dort weiterarbeiten.

  • Implementierte interaktive angedockte Fenster, die im Gegensatz zu herkömmlichen Bild-in-Bild-Fenstern auch dann interaktiv bleiben, wenn sie im Desktop-Modus über anderen Anwendungen angedockt werden.
  • Es wurden zwei neue APIs hinzugefügt: die UWB DL-TDOA API zur Bestimmung der Position eines Geräts innerhalb eines Gebäudes mittels Wi-Fi für die Indoor-Navigation; und die Proximity Detection API zur Erkennung von Geräten in der Nähe über Wi-Fi.
  • Die Unterstützung für das VVC-Videoformat (Versatile Video Coding), auch bekannt als H.266-Videokompressionsstandard, wurde hinzugefügt. Dieses wurde gemeinsam von den Arbeitsgruppen MPEG (ISO/IEC JTC 1) und VCEG (ITU-T) unter Beteiligung von Unternehmen wie Apple, Ericsson, Intel, Huawei, Microsoft, Qualcomm und Sony entwickelt. H.266 ersetzt H.265 (HEVC) und bietet hocheffiziente Übertragung und Speicherung für alle Bildschirmauflösungen (von SD und HD bis 4K und 8K), unterstützt HDR-Videos (High Dynamic Range) und 360°-Panoramavideos.
  • Die Möglichkeit, Videos mit gleichbleibender Qualität aufzuzeichnen, wurde hinzugefügt. Dieser Modus wird im MediaRecorder-Objekt mithilfe der Methode `setVideoEncodingQuality()` konfiguriert, sodass Sie die Qualität unabhängig von der Bitrate fixieren können.
  • Добавлена поддержка формата изображений RAW14, применяемого в профессиональных цифровых камерах и обеспечивающего хранение 15 бит на цветовой канал.
  • Добавлено поддержка формата HDR-видео Eclipsa Video.
  • Hinzugefügt wurde ein Software-Encoder für das HE-AAC (High-Efficiency Advanced Audio Coding) Audioformat, der sowohl niedrige als auch hohe Bitraten unterstützt.
  • Eine neue Berechtigung, ACCESS_LOCAL_NETWORK, wurde hinzugefügt, um den App-Zugriff auf das lokale Netzwerk einzuschränken. Diese Berechtigung ermöglicht es Apps, Geräte im lokalen Netzwerk, wie z. B. Smart-Home-Geräte und Multimediasysteme, zu identifizieren und sich mit ihnen zu verbinden. Die Berechtigung wurde eingeführt, um zu verhindern, dass schädliche Apps lokale Netzwerkressourcen scannen, beispielsweise um die Umgebung des Benutzers unbemerkt zu ermitteln.
  • Der Schutz vor dem Abfangen von Einmalpasswörtern (OTPs) und Bestätigungscodes, die per SMS versendet werden, wurde verbessert. Die meisten Apps haben nun erst drei Stunden nach Empfang direkten Zugriff auf diese Nachrichten. Der Standard-SMS-Reader zeigt diese Nachrichten sofort an.
  • Реализована защита от звонков мошенников, представляющихся сотрудниками банка. Платформа может взаимодействовать с установленными банковскими приложениями для подтверждения того, что звонок инициирован банком. Также банки могут определять номера телефонов на которых допускаются только входящие звонки.
  • Добавлена возможность предоставления приложениям временного доступа к данным о точном местоположении, действующего только в течение текущего сеанса работы с программой.
  • Механизм защиты динамической загрузки кода (DCL, Dynamic Code Loading) расширен для применения с нативными библиотеками, загружаемыми через метод System.load(), а не только
    файлами в форматах DEX и JAR. DCL позволяет избежать подстановки вредоносного кода в динамически загружаемые исполняемые файлы, благодаря выставлению для подобных файлов прав доступа, допускающих только чтение.
  • Der Mechanismus zur Zertifikatstransparenz ist standardmäßig aktiviert und führt ein öffentliches Protokoll aller ausgestellten und widerrufenen Zertifikate.
  • Es wurde die Möglichkeit eingeführt, APK-Pakete mit einer digitalen Signatur zu zertifizieren, die auf einem Hybridalgorithmus basiert, der den klassischen Algorithmus mit dem ML-DSA-Algorithmus kombiniert und gegen Brute-Force-Angriffe auf einem Quantencomputer resistent ist.
  • Для приложений, работающих в фоновом режиме, ограничен доступ к API для воспроизведения звука, подключения к звуковым устройствам и изменения громкости. Подразумевается, что только активные приложения, с которыми в данный момент взаимодействует пользователь, могут начинать воспроизведение и менять громкость.
  • Es wurde Unterstützung für hybride Verschlüsselung auf Basis des HPKE-Mechanismus (Hybrid Public Key Encryption, RFC 9180) hinzugefügt, der die einfache Schlüsselübertragung bei der Public-Key-Verschlüsselung mit der hohen Leistungsfähigkeit der symmetrischen Verschlüsselung kombiniert (die Daten werden mit einem schnellen symmetrischen Schlüssel verschlüsselt, der Schlüssel selbst jedoch mit einem langsamen asymmetrischen Schlüssel).
  • При вводе паролей и PIN-кодов при помощи физической клавиатуры по умолчанию отключено отображение последнего введённого символа по мере набора.
  • Um die Implementierung der Touchpad-Unterstützung in Spielen zu vereinfachen, wurde die Verarbeitung von Maus- und Touchpad-Ereignissen vereinheitlicht. Standardmäßig werden Touchpad-Ereignisse im Zusammenhang mit Zeigerbewegungen und Scrollgesten nun, wie bei einer Maus, in relative Koordinaten umgewandelt. Der Zugriff auf absolute Koordinaten erfolgt durch explizite Angabe des Modus POINTER_CAPTURE_MODE_ABSOLUTE.
  • Die Methode getInitialRestingBounds() wurde dem ChooserSession-Objekt hinzugefügt, sodass Sie die endgültige Position und Größe des Chooser-Dialogs ermitteln können, nachdem die Animation beendet und die Daten geladen wurden.
  • Es wurden die Methoden getStreamingAppMaxDownlinkKbps und getStreamingAppMaxUplinkKbps hinzugefügt, um die maximale Bandbreite des Kommunikationskanals zum Zweck der Auswahl der Qualitätsstufe für das Streaming zu bestimmen.
  • Für Hardwarehersteller wurde eine API bereitgestellt, mit der sie Kameraerweiterungen erstellen können, die anwendungsspezifische Funktionen ermöglichen, wie z. B. die Super Resolution Detailverbesserungs-Engine, Rauschunterdrückungsmodi und KI-Qualitätsoptimierer.
  • Es wurde eine API hinzugefügt, um Informationen über den Kameratyp zu erhalten (eingebaute Kamera, USB-Webcam oder virtuelle Kamera).
  • Die Unterstützung für Hörgeräte, die über Bluetooth Low Energy (BLE) verbunden sind, wurde hinzugefügt. Diese Geräte werden nun in der neuen Kategorie TYPE_BLE_HEARING_AID klassifiziert, wodurch Apps zwischen Hörgeräten und Kopfhörern unterscheiden und die Systemtonwiedergabe separat steuern können (beispielsweise können Sie Benachrichtigungen, Klingeltöne und Alarme über den eingebauten Lautsprecher Ihres Telefons anstatt über Ihr Hörgerät wiedergeben).
  • Es wurden separate Einstellungen für die Anzeige von Passwörtern hinzugefügt, die über die physische Tastatur und den Touchscreen eingegeben werden. Standardmäßig werden die über die physische Tastatur eingegebenen Passwortzeichen sofort ausgeblendet.
  • Verbesserte Darstellung von App-Widgets auf externen Bildschirmen durch Berücksichtigung von DPI-Unterschieden bei der Skalierung.
  • Es wurde die Anfrage ACTION_VPN_APP_EXCLUSION_SETTINGS hinzugefügt, mit der ein Systembildschirm mit Einstellungen geöffnet werden kann, die es einer Anwendung ermöglichen, auf das Netzwerk zuzugreifen und dabei den VPN-Tunnel zu umgehen.
  • Unterstützung für OpenJDK 25-Sprachfunktionen und Java-Klassen hinzugefügt.
  • Die Funktionen der Kamera-API wurden erweitert. Die Methode `updateOutputConfigurations()` wurde dem `CameraCaptureSession`-Objekt hinzugefügt, um Ausgabebereiche dynamisch anzuhängen oder zu trennen, ohne die gesamte Kameraaufnahmesitzung neu konfigurieren zu müssen. Diese Änderung ermöglicht ein nahtloses Umschalten zwischen verschiedenen Kameramodi (z. B. Videoaufnahme und Fotoaufnahme). Bei der Arbeit mit logischen Kameras, die mehrere physische Sensoren umfassen, können nun Metadaten für jeden Sensor und nicht nur für den primären abgerufen werden.
  • Das Attribut `android:usesCleartextTraffic`, das es Anwendungen ermöglichte, unverschlüsselten Datenverkehr wie „http://“-Anfragen zu übertragen, ist veraltet. Falls unverschlüsselter Datenverkehr erforderlich ist, sollten separate Sicherheitskonfigurationsdateien verwendet werden.
  • Es wurden Einstellungen zur Verwaltung des VoIP-Anrufverlaufs hinzugefügt, mit denen Sie steuern können, ob Informationen in Protokollen gespeichert werden und ob Informationen über abgeschlossene Anrufe in der Benutzeroberfläche angezeigt werden.
  • Die Wi-Fi RTT (Round-Trip-Time) API wurde erweitert, um eine kontinuierliche Nähebestimmung zu Zugangspunkten und eine sichere Peer-to-Peer-Knotenerkennung zu ermöglichen.
  • Dem CompanionDeviceManager wurden neue Profile hinzugefügt, um Berechtigungen anzufordern und die Interaktion von Apps mit medizinischen Geräten und Fitness-Trackern zu ermöglichen.
  • В Android Die Laufzeitumgebung (ART) implementiert einen generationsbasierten Garbage Collector (Generational Concurrent Mark-Compact Garbage Collector), der die Verarbeitung „alter“ und „junger“ Objekte trennt und so die Effizienz der Bereinigung kürzlich erstellter Objekte mit kurzer Lebensdauer verbessert. Der Einsatz eines generationsbasierten Garbage Collectors verringert das Risiko von Verzögerungen bei der Ressourcenzuweisung und reduziert die CPU-Last, wodurch die Energieeffizienz gesteigert wird.
  • Реализовано ограничение на максимальный объём оперативной памяти, которое может занимать приложение. При превышении лимита, вычисляемого на основе имеющегося в устройстве ОЗУ, приложение принудительно завершается. Для сокращения размера потребляемой памяти предложен R8 Optimizer, упаковывающий имена классов, методов и полей, а также удаляющий неиспользуемый код и ресурсы.
  • При сборке ядра Linux включена оптимизация AutoFDO (Auto-Feedback-Directed Optimization), использующая результаты профилирования c информацией о частоте выполнения различных участков кода для повышения производительности часто выполняемых операций. В проведённых тестах включение AutoFDO для ядра привело к сокращению времени загрузки на 2.1%, ускорению первого запуска программ на 4.3%, повышению эффективности системных вызовов на 9.3%, сокращению времени выполнения mmap-транзакций Binder на 12.3%, HwBinder на 20% и Binder RPC на 21.7%.
  • Es wird eine neue Implementierung der Nachrichtenwarteschlange android.os.MessageQueue vorgeschlagen, die ohne Sperren auskommt. Diese neue Implementierung verbessert die Leistung und reduziert Frameverluste.
  • Anträge, die Unterstützung beanspruchen Android Ab Version 17 ist das Ändern der Werte von Feldern, die als "static final" gekennzeichnet sind, untersagt, wodurch aggressivere Leistungsoptimierungen zur Laufzeit aktiviert werden können.
  • Um den Speicherverbrauch zu reduzieren, wurde die Größe der benutzerdefinierten Benachrichtigungsansichtslayouts begrenzt.
  • Dem ProfilingManager-Profiler wurden die zusätzlichen Trigger TRIGGER_TYPE_COLD_START, TRIGGER_TYPE_OOM und TRIGGER_TYPE_KILL_EXCESSIVE_CPU_USAGE hinzugefügt, um Daten zu sammeln, die für die Fehlersuche bei Leistungsproblemen nützlich sind.

Source: opennet.ru

Kaufen Sie zuverlässiges Hosting für Websites mit DDoS-Schutz und VPS-VDS-Servern 🔥 Kaufen Sie zuverlässiges Webhosting mit DDoS-Schutz, VPS- und VDS-Server | ProHoster