Kto odpowiada za brak aktualizacji twojego telefonu z Androidem?

Prześledziliśmy jeden z najbardziej dziwacznych i pokrętnych procesów w branży technologicznej - aktualizację systemu Android. Ta dziwaczna procedura sprawiła, że Google stracił kontrolę nad własnym systemem, a 300 milionów użytkowników nie dostaje na czas tego, co powinni.

Nic tu nie jest proste ani oczywiste. Potrzeba naprawdę wiele pomysłowości, by opracować równie zawodny i podatny na opóźnienia proces. Co gorsze trudno znaleźć winnego - wygląda na to, że tak naprawdę winni są wszyscy, a najbardziej cierpimy my, klienci. Zobaczmy kto za co tu odpowiada i na kogo możemy się wściekać.

Producent

Za co odpowiada producent w procesie aktualizacji Androida?

Największą rolę w procesie aktualizowania telefonu z Androidem odgrywa producent sprzętu, na którym OS jest zainstalowany. Czyli na przykład Samsung, Sony, LG, HTC, Huawei i inni. Google udostępnia kod źródłowy nowej wersji Androida, a producent sprzętu powinien zoptymalizować go pod kątem własnych urządzeń.

to producent musi wydzielić odpowiednie zasoby (przede wszystkim ludzkie), celem fizycznej pracy przy kodzie źródłowym

podkreśla Jarosław Bukowski, GSM Product Specialist w firmie LG. Zajmują się tym zespoły R&D (Research & Developement), które zależnie od firmy mogą różnić się liczebnością (co przecież też ma wpływ na szybkość postępów pracy).

Najpierw zespół R&D przygotowuje oprogramowanie (które w ramach własnych zasobów wstępnie weryfikuje). Następnie przekazuje je do sprawdzenia lokalnym oddziałom R&D - tu proces jest różny dla każdego producenta, jednak zasadniczą cechą wspólną jest przeprowadzenie żywych testów wszystkich funkcjonalności zawartych w urządzeniu, sprawdzenie działania sprzętu w warunkach lokalnych (ze szczególnym uwzględnieniem pracy w sieciach komórkowych) oraz szeroko rozumiany tzw. "free testing", czyli zwyczajne użycie w sytuacjach codziennych - tłumaczy Bukowski.

Producent odpowiada więc za dostosowanie kodu źródłowego oprogramowania do specyfiki sprzętu, na którym będzie on uruchamiany, oraz za przeprowadzenie kompleksowych testów wydajnościowych (czy uruchomienie wielu aplikacji nie spowolni pracy systemu, czy bateria nie będzie się szybciej wyczerpywała, itd.). Do producenta należy także za wprowadzanie poprawek bezpieczeństwa udostępnianych przez Google.

Poprawki takie nie wpływają na numerację wersji Androida. Mają jednak spory wpływ na proces aktualizacji. Producent może zacząć bowiem prace nad daną wersją oprogramowania (na przykład 2.3.4), później zmienia kod, żeby dostosować go do kolejnej wersji (2.3.5), a w międzyczasie Google podsyła łatkę bezpieczeństwa. Poprawka taka musi być uwzględniona w Androidzie, więc cały proces zatwierdzania oprogramowania oraz testów rozpoczyna się na nowo, tłumaczy przedstawiciel LG.

Mamy więc dwa pierwsze powody opóźnień w procesie aktualizacji: niewystarczająca elastyczność działów R&D oraz niespodziewane poprawki.

Załóżmy, że producent przygotował aktualizację dla twojego urządzenia. Czy to znaczy, że smartfon będzie już wkrótce działał pod kontrolą najnowszej wersji oprogramowania? Nie do końca. Gdy aktualizacja jest już ukończona i zaakceptowana, może trafić na telefony osób, które swój sprzęt kupiły w sklepie - a nie u operatora. Dlaczego? Bo operatorzy są kolejną częścią układanki.

Operator

Jaką rolę w procesie aktualizacji Androida odgrywa operator?

Operator najpierw decyduje, czy w ogóle chce wprowadzić aktualizację danego modelu smartfona, tłumaczy nam Andrzej Gładki, kierownik Działu Zarządzania Produktami w T-Mobile. Owszem, operator może bowiem nie chcieć aktualizacji dla konkretnych modeli telefonów. Powody to najczęściej brak ludzi, którzy mogliby zająć się pracą nad oprogramowaniem (lub brak czasu), a także chęć promowania nowszych modeli telefonów, a w związku z tym ciche "wygaszanie" poprzednich modeli.

Dlaczego jednak aktualizacja oprogramowania trafia najpierw na urządzenia kupowane w sklepie, a nie u operatora? Bo operator także wprowadza zmiany w oprogramowaniu. Do kodu dostarczonego przez producenta dodane zostają usługi operatora, jego ustawienia (na przykład punkty dostępu, konfiguracja MMS-ów czy APN), usługi czy aplikacje. Jeśli posiadacie telefon z Androidem w wersji operatorskiej, to oprogramowanie przechodzi naprawdę długą drogę, zanim trafi na wasze urządzenie. A więc po kolei: Google (udostępnia kod) - producent (przygotowuje aktualizację) - operator (dostosowuje wersję Androida dla swoich potrzeb, przeprowadza testy techniczne i dokonuje akceptacji). Ale to wcale jeszcze nie koniec. Później jeszcze wprowadzone zmiany muszą zostać zaakceptowane przez producenta, a ostatecznie jeszcze przez Google'a. Bo przecież rola Google w procesie aktualizacji nie kończy się na udostępnieniu kodu źródłowego.

Google

Jaką rolę w procesie aktualizacji odgrywa Google?

Google otwiera i kończy cykl aktualizacji. Otwiera, bo to on udostępnia kod źródłowy kolejnych wersji Androida. Kończy, bo odpowiada za ostateczną akceptację wszystkich wersji producenckich i operatorskich. Zanim nowy Android trafi na twój telefon, Google musi zatwierdzić wszystkie wprowadzone przez swoich partnerów zmiany. A taki proces trwa.

Google ma to do siebie, że może dla własnego widzimisię strzelić ostrzegawczego pstryczka w nos, 'czepiając się' tak naprawdę rzeczy totalnie nieistotnych. Procedury Google są szczegółowo przygotowywane i musimy zawsze liczyć się z tym, że dostawca oprogramowania, może zwrócić uwagę na rzecz nie istotną dla nas z punktu widzenia funkcjonalności, ale bardzo ważną z perspektywy bezpieczeństwa lub wpływu na inne, ważne elementy systemu. Takie sytuacje należą do rzadkości. Zazwyczaj akceptacja Google jest formalnością, bo wiemy, na czym im zależy i to też dostają. Musimy jednak pamiętać o procedurach: nowe oprogramowanie do akceptacji trzeba zgłosić, poczekać na swoją kolej, potem na wynik sprawdzenia i dopiero po tymże oczekiwaniu uznać za gotowe do wydania klientowi - mówi Bukowski z LG.
Duży może więcej. W kolejce zgłoszeń, które rozpatrywane są przez Google najpierw pod uwagę brane są duże podmioty. Na przykład aktualizacje przygotowywane dla Vodafone czy AT&T. Ma tu miejsce prosta ekonomia skali. Mały producent lub mały operator dłużej czeka na pozytywną opinię Google'a, niż liczący się na rynku gracz - dodaje Andrzej Gładki z T-Mobile.

W ten sposób od wypuszczenia kodu przez Google do udostępnienia aktualizacji użytkownikom mija nawet kilka miesięcy. Jest jednak jeszcze jeden element układanki, o którym dość często się zapomina.

Producent komponentów

Jaką rolę w procesie aktualizacji Androida odgrywa producent komponentów?

Producenci podzespołów muszą przygotować odpowiednie oprogramowanie (m.in. sterowniki).

Rolą producenta jest zmusić sprzęt do działania przy pomocy oprogramowania, jednak to poddostawcy muszą przygotować podstawowe elementy - zauważa Bukowski - zdarza się niestety dość często, że podwaliny pod przygotowanie aktualizacji są mocno opóźnione, a czasem nawet niemożliwe do wykonania, zanim faktyczny producent w ogóle zabierze się do wykonywania swojej roboty. Opóźnienia idą często w długie miesiące.

Kto więc ostatecznie odpowiada za brak aktualizacji telefonu z Androidem? Zły producent, zły operator, jeszcze gorszy Google? Nie sposób tego stwierdzić z całą pewnością. W świecie idealnym producent dysponowałby wystarczającą liczbą osób w działach R&D i błyskawicznie przygotowywałby swoją wersję aktualizacji. Podobnie operator - miałby do dyspozycji nieograniczone zasoby ludzkie i czasowe. A Google i producent komponentów? Także mogliby szybko reagować i współpracować z partnerami.

Jednak świat nie jest idealny i na aktualizację Androida trzeba czekać kilka dobrych miesięcy. Kogo należy winić? Wydaje się, że za opóźnienia odpowiada... sam Google. Wielkie korporacje potrafią wykazywać się zadziwiającą niefrasobliwością i brakiem perspektywicznego myślenia. Ostatecznie wypuszczając produkt taki jak Android nietrudno było przewidzieć, że proces jego aktualizacji zamieni się w istny koszmar. I to koszmar, którego ofiarami staniemy się my - klienci.