Android Nougat
# Android Nougat

Android Nougat (Deckname Android N während der Entwicklung) ist die siebte Hauptversion des Android-Betriebssystems. Erstmals als Alpha-Testversion am 9. März 2016 veröffentlicht, wurde sie am 22. August 2016 offiziell veröffentlicht, wobei Nexus-Geräte die Ersten waren, die das Softwareupdate erhielten. Das LG V20 war das erste Smartphone, das mit Nougat veröffentlicht wurde.

Nougat bringt bemerkenswerte Änderungen am Betriebssystem und seiner Entwicklungsplattform mit sich, darunter die Möglichkeit, mehrere Anwendungen gleichzeitig auf dem Bildschirm in einer Split-Screen-Ansicht anzuzeigen, die Unterstützung für Inline-Antworten auf Benachrichtigungen und einen erweiterten Stromsparmodus „Doze“, der die Gerätefunktionalität einschränkt, sobald der Bildschirm für eine gewisse Zeit ausgeschaltet ist. Zusätzlich wurde die Plattform auf eine OpenJDK-basierte Java-Umgebung umgestellt und erhielt Unterstützung für die Vulkan-Grafik-Rendering-API und somit „nahtlose“ System-Updates auf unterstützten Geräten.

Am 5. Februar 2018 liefen 28,5 % der Geräte, die auf Google Play zugriffen, auf Nougat, 22,3 % auf Android 7.0 und 6,2 % auf Android 7.1.

## Geschichte

Die Version trug intern den Codenamen „New York Cheesecake“. Am 9. März 2016 veröffentlichte Google im Vorfeld der Google I/O-Entwicklerkonferenz die erste Alpha-Version von Android „N“ als Teil eines neuen „Android Beta-Programms“, das von Entwicklern und Enthusiasten vor der offiziellen Veröffentlichung getestet werden soll. Die Entwickler-Vorschau-Builds waren nur mit den aktuellen Nexus-Geräten kompatibel, den 5X, 6P, 6, 6, 9, Pixel C und dem Nexus Player. Das neu eingeführte „Android Beta Program“ ermöglicht es Testern, sich für Over-the-Air-Updates auf neue Betaversionen zu entscheiden, sobald diese veröffentlicht wurden.

Am 13. April 2016 wurde die Android N Beta Version 2 veröffentlicht. Google stellte Android „N“ während der I/O Keynote am 18. Mai 2016 vor und stellte gleichzeitig seine neue Virtual-Reality-Plattform Daydream vor. Die Beta Vorschau 3, welche als erste Vorschau-Version als geeignet für breitere öffentliche Betatests erachtet wurde, wurde zu diesem Zeitpunkt veröffentlicht. Google kündigte auch einen Wettbewerb an, um den offiziellen Release-Namen des Betriebssystems zu ermitteln.

Die Beta Version 4 wurde am 15. Juni 2016 veröffentlicht. Am 30. Juni 2016 gab Google bekannt, dass der Release-Name „Nougat“ lauten würde; es wurde auch bestätigt, dass Nougat die Version 7.0 von Android sei.

Die finale Beta Version 5, wurde am 18. Juli 2016 veröffentlicht.

Android 7.0 wurde offiziell am 22. August 2016 mit dem Nexus 6, 5X, 6P, 9, Nexus Player, Pixel C und dem General Mobile 4G als erste Geräte veröffentlicht.

Dave Burke, Vice President of Engineering von Android, gab im August 2016 bekannt, dass Updates für Nougat vierteljährlich als Wartungsreleases veröffentlicht werden, die sich auf „kontinuierliche Verfeinerungen und Verbesserungen“ konzentrieren. Am 6. September 2016 kündigte LG das V20 an, das erste Smartphone, das mit vorinstalliertem Nougat ausgeliefert wird. Google enthüllte während einer hardwarebasierten Veranstaltung am 4. Oktober 2016 die neuen Pixel- und Pixel-XL-Smartphones, welche die Nexus-Serie ablösten.

Die neue Version bietet Unterstützung für die Daydream-VR-Plattform, Bildtastaturen, erweiterte Emoji-Unterstützung (einschließlich männlicher und weiblicher Versionen), Unterstützung für Aktionen, die in Menüs auf dem Home-Bildschirm angezeigt werden sollen, und andere neue Funktionen. Eine Vorschau von 7.1 für bestehende Nexus-Geräte wurde über das Android Beta Program im Laufe des Monats veröffentlicht und offiziell als Android 7.1.1 am 5. Dezember 2016 veröffentlicht.

Android 7.1.2 wurde im April 2017 veröffentlicht und bietet verschiedene Verbesserungen und kleinere Funktionsverbesserungen für Geräte der Marken Nexus und Pixel.

## Merkmale

### Benutzerfreundlichkeit

Nougat überarbeitet den Benachrichtigungsfarbton, der nun eine kleinere Reihe von Symbolen für Einstellungen enthält, ersetzt die Benachrichtigungskarten durch ein neues Design und ermöglicht Inline-Antworten für Benachrichtigungen.

Für Telefone wurde ein Split-Screen-Darstellungsmodus eingeführt, bei dem zwei Apps je auf die Hälfte des Bildschirms angezeigt werden können. Ein experimenteller Multi-Window-Modus ist auch als verstecktes Feature verfügbar, bei dem mehrere Anwendungen gleichzeitig auf dem Bildschirm in überlappenden Fenstern angezeigt werden können.

Der in Android Marshmallow eingeführte „Doze“-Energiesparmechanismus wurde um einen Zustand erweitert, der aktiviert wird, wenn das Gerät mit Batterie betrieben wird und der Bildschirm eine Zeitlang ausgeschaltet war, aber nicht stillsteht. In diesem Zustand ist die Netzwerkaktivität eingeschränkt und Apps erhalten „Wartungsfenster“, in denen sie auf das Netzwerk zugreifen und Hintergrundaufgaben ausführen können. Wie bei Marshmallow wird der volle Doze-Status aktiviert, wenn das Gerät bei abgeschaltetem Bildschirm für eine gewisse Zeit stillsteht. Ein neuer „Data Saver“-Modus schränkt die Nutzung mobiler Daten im Hintergrund ein und kann interne Funktionen in Anwendungen auslösen, die darauf ausgelegt sind, die Bandbreitenauslastung zu reduzieren, wie z. B. die Begrenzung der Qualität von Streaming-Medien.

### Plattform

Im Dezember 2015 kündigte Google an, dass Android Nougat seine Java Runtime Environment von der alten Apache Harmony auf OpenJDK – die offizielle Open-Source-Implementierung der Java-Plattform, die von der Oracle Corporation und der Java-Community betreut wird – umstellen wird.

Nougat ist die erste Version mit Unicode-9.0-Unterstützung und kommt mit aktualisiertem Emoji plus Unterstützung für Emoji-Hauttöne.

Android 7.1 bietet native API-Unterstützung für die Implementierung von Bildtastaturen, Multi-Endpunkt-Telefonie, Kontextmenüs und abgerundete Icon-Assets für Apps auf Launchern sowie Unterstützung für die Virtual-Reality-Plattform Google Daydream. Die Google-Daydream-Funktion ist ein spezifischer „VR-Modus“ mit fortschrittlicher Technologie für reduzierte Grafiklatenz, ein „nachhaltiger Performance-Modus“ zur Unterstützung der Entwickler bei der Optimierung von Anwendungen für das thermische Profil eines Geräts, ein neuer Head-Tracking-Algorithmus, der die Eingaben verschiedener Gerätesensoren kombiniert, und die Integration von Systemmeldungen in die VR-Benutzeroberfläche.

### Sicherheit

Als Reaktion auf die Stagefright-Familie von Bugs, die 2015 veröffentlicht und behoben wurden, wurden mehrere Änderungen vorgenommen, um den Medienstapel gegen zukünftige Schwachstellen abzusichern. Runtime Integer-Überlauf-Erkennung wurde implementiert, um zu verhindern, dass die meisten Stagefright-ähnlichen Programmierfehler zu Schwachstellen werden, und um zu helfen, solche Fehler zu beheben und zu verhindern. Androids monolithischer MediaServer-Prozess wurde überarbeitet, um dem Prinzip der geringsten Privilegien besser gerecht zu werden. Der MediaServer ist nun in mehrere separate Prozesse aufgeteilt, die jeweils in einer eigenen, unprivilegierten Sandbox laufen und nur die für ihre Aufgabe erforderlichen Berechtigungen vergeben. So kann z. B. nur der AudioServer auf Bluetooth zugreifen, und libstagefright läuft nun innerhalb der MediaCodecService Sandbox, der nur GPU-Zugriff gewährt wird. Weitere Einschränkungen wurden dem Medienstapel durch seccomp auferlegt.

Verschiedene Mechanismen wurden aktiviert, um die Möglichkeit zu reduzieren, dass bösartiger Code in den Linux-Kernel eingespeist und/oder ausgeführt wird, einschließlich der Aufteilung des Kernelspeichers in logische Segmente für Code und Daten, mit Seitenzugriffsberechtigungen von schreibgeschützt und nicht ausführbar. Der Kernel war auch daran gehindert, direkt auf den Speicherplatz des Benutzers zuzugreifen, und im GCC-Compiler wurde ein stärkerer Stack-Schutz aktiviert, um das Stack-Zertrümmern zu reduzieren. Um die Exposition des Kernels gegenüber potentiell bösartigem Code zu begrenzen, wurde perf standardmäßig deaktiviert, ioctl-Befehle wurden durch SELinux eingeschränkt und seccomp-bpf wurde aktiviert, um Prozessen die Möglichkeit zu geben, Systemaufrufe einzuschränken.

Auf Geräten, die mit Android Nougat ausgeliefert werden, muss die „Verified Boot“-Richtlinie (die teilweise auf KitKat eingeführt wurde und Benachrichtigungen beim Start auf Marshmallow anzeigt) strikt eingehalten werden. Wenn Systemdateien beschädigt oder anderweitig verändert werden, erlaubt das Betriebssystem nur den Betrieb in einem Modus mit eingeschränkter Nutzung oder verweigert den Bootvorgang.

