Nach wie vor nur vom Hersteller. Die Updates selbst sind zwar nicht Gerätespäzifisch, aber sie müssen halt in den Sourcecode vom Hersteller "eingepflegt" werden.
Die Schritte für einen Hersteller wären folgende:
- "repo sync" gegen aktuelles aosp, um die Sicherheitspatches zu erhalten (automatischer Prozess, dauert 2 Minuten. Für den unwahrscheinlichen Fall, dass es Konflikte gibt, müssen die allerdings manuell behoben werden, Konflikte können entstehen, wenn die vom Patch aktualisierten Dateien vom Hersteller modifiziert werden).
- sourcecode neu bauen (automatischer Prozess dauert 5-30 Minuten je nachdem, welche Teile des aosp geändert wurden)
- das neue ota-update-zip muss dann hochgeladen werden und für alle Kunden freigegeben werden (dauert vll 5 Minuten?)
Da die Sicherheitsupdates von Google bereits getestet wurden, könnte man den ganzen Kram per Script automatisieren, dann liegt der tatsächliche Aufwand für den Hersteller auf jeden Fall bei unter einer Mannstunde. Soviel zum Aufwand..
Das aktuelle Sicherheitspatchlevel für Android 6.0.1 ist übrigens 1.Februar.2017
Soviel jedenfalls zur Theorie. In der Praxis sieht das Ganze leider oft anders aus.
- Gerät wird verkauft von Hersteller X
- Gerät wird produziert von Hersteller Y
- SoC des Geräts wird entwickelt von Hersteller Z
Hersteller Z stellt Kernel(Treiber) und Frameworkanpassungen (z.B. für Framebuffer und Hardwarebeschleunigung von Video-Codecs) zur Verfügung. Diese basieren unter Umständen bereits auf einem gewissen Stand des aosp und lassen sich deswegen nicht einfach immer auf das aktuelle aosp anwenden, selbst wenn es nur ein kleiner Sprung von 6.0.0 auf 6.0.1 ist.
Manchmal kommt vll auch bereits ein vollständiges aosp von Hersteller Z. Hersteller Y ergänzt das Ganze nun noch um Gerätespezifische Extras. Der "Device-Tree" für das Gerät bekommt noch weitere Treiber (Touchscreen, Wifi-Modul). Ggf. gibt es hier dann weitere Hardwarespezifische Ergänzungen im aosp, damit zum Beispiel Tethering läuft.
Worauf ich hier hinaus will, sollte klar sein: Wenn man nicht etwa alles aus einer Hand fertigt, wie beispielweise Apple oder Samung, ist man als Hersteller X sehr stark davon abhängig, was man von Hersteller Y erhält. Teilweise kennt und versteht Hersteller X dann gar nicht die Änderungen am aosp, weil die Kommunikation nur mit Hersteller Y stattfindet und Hersteller Y als einziger mit Hersteller Z in Kontakt ist. Wenn dann nun der Sourcecode, den Hersteller Y Hersteller X bereitgestellt hat, weder aktuell ist, noch irgendwie vernünftig mit dem offiziellen aosp repository gesynct werden kann, wäre manueller Pflegeaufwand nötig, den natürlich kaum ein Hersteller X zu leisten vermag. So schnell wie auch neue SoCs herausgebracht werden, stellt Hersteller Z natürlich auch sehr schnell den Support für ein älteres SoC ein. Das erklärt dann die teilweise stark hinterher hinkende Kernel-Version, auch auf Geräten mit neuerem Android.
Sicherlich ist alles eine Frage des Preises, aber wenn Hersteller X froh sein kann, Hardware günstig zu bekommen mit funktionierender Softwarebasis und somit überhaupt erstmal in der Lage ist, konkurrenzfähige Preise zu erzielen, geht man halt lieber diesen Weg. Bringt ja auch nichts, wenn man ein noch so tolles Handy rausbringt, dass dann leider zu teuer ist und keiner kauft es.