Ostatnimi czasy Google rozpoczęło przeprowadzanie znacznych zmian związanych ze sposobem w jaki programiści mają programować aplikacje, które później trafią do ich Sklepu. Najwyraźniej amerykański gigant chce wymusić częstszą zmianę SDK przez programistów aplikacji. Oprócz tego powoli system przechodzi na 64 bity i to także jest źródłem przyszłych zmian.

Samych zmian jest kilka i wszystkie wydają się brać na cel właśnie programistów – głównie tych, którzy wciąż aktualizują swoje aplikacje lub mają zamiar zacząć je tworzyć. I wydać w Sklepie Play oczywiście. Nie wpłyną one na aplikacje dostępne w inny sposób (np. poprzez repozytoria F-Droid), przynajmniej te związane z SDK.

Wersja docelowa SDK

Aplikacje mogą działać na wielu wersjach systemu (a nawet na bardzo wielu, jak taki Titanium Backup). Jednak jako tzw. „cel” (target) ustawiona jest tylko jednak specyficzna wersja.

TargetSDKversion wskazuje wersję, na której jesteśmy pewni, że aplikacja będzie działać. Jest to docelowa wersja systemu Android dla aplikacji. W ten sposób jej autor określa wersję systemu Android, dla której aplikacja jest przeznaczona do uruchamiania.

Niby nic poważnego, bo o wiele ważniejsze jest ustawienie minSdkVersion oraz compileSdkVersion, które, odpowiednio, wskazują minimalną wersję systemu, na której aplikacja ruszy oraz wersję systemu, z której API będziemy korzystać. Te trzy wersje nie muszą być oczywiście zgodne ze sobą.

Ostatnimi czasy Google idzie jednak na „wojnę” z używanymi przez programistów wersjami SDK, a na pierwszy ogień poszło właśnie targetSDKversion.

Android Oreo staje się wersją docelową

Po pierwsze Google uznało, że każda nowa aktualizacja, wydana pierwszego sierpnia lub później, jako target ustaloną ma mieć ósmą wersję systemu.

Twórcy istniejących aplikacji mają czas do 1 listopada, aby także zmienić docelową wersję systemu. No chyba, że nie zamierzają już aktualizować swojego tworu. W takim wypadku Google nic im nie zrobi…

Oczywiście zmiana jest związana z „bezpieczeństwem”. I trzeba powiedzieć, że na pewno coś w tym jest – kolejne wersje systemu, a więc i jego SDK oraz API, przynoszą poprawki wielu błędów. Jednakże zmiany wprowadzane w nowych wersjach systemu nie zawsze są kompatybilne ze starymi. A wtedy jedną możliwością będzie porzucenie aplikacji albo obchodzenie problemu (aczkolwiek to nie zawsze jest możliwe).

Plusem jest to, że Google nie zostawia programistów na lodzie i wydało serię poradników, jak, przynajmniej częściowo, przekształcić aplikacje dla starszych wersji systemu (4.1, 4.4, 5.0, 6.0, czy 7.0) na takie „wycelowane” w Oreo.

Pod tym względem jest sporo pracy. Także dla Google ponieważ w Androidzie Oreo znajdują się aplikacje systemowe, które jako wersję docelową wskazują 4.1 (Jelly Bean), czy nawet 2.3 (GingerBread)!

SDK

Ich launcher, Google Now Launcher, jako wersję docelową ma w tej chwili ustalonego Kit Kata (4.4)…

SDK

64 bity są przyszłością

Nie można się z tym nie zgodzić. Jednak jeszcze przez wiele lat urządzenia 32 bitowe będą tworzyć znaczną część rynku urządzeń z systemem Android.

A Google powoli chce się ich pozbyć.

Po pierwsze (co popieramy) Android Pie oficjalnie nie trafi na urządzenia z 32 bitowymi procesorami. Nieoficjalnie oczywiście kompilacja dalej nie jest problemem (co nam się podoba), jednak oficjalnie jest to już system w 100% w wersji 64 bitowej.

Wskazuje to na tendencję do ograniczania dostępu do nowości dla starszych urządzeń. A to doprowadzi do dalszej fragmentacji, gdyż starsze urządzenia, nawet nieoficjalnie, nowych wersji systemu nie otrzymają…

Po drugie od sierpnia 2019 aplikacje mają stać się 64 bitowe z możliwością implementacji bibliotek pozwalających na ich działanie na procesorach 32 bitowych. Nie oznacza to porzucenia starszych urządzeń, ale spora liczba twórców apek, zwłaszcza tych indie, gdzie całość tworzona jest przez jedną-dwie osoby, porzuci wsparcie dla starych procesorów.

A po jakimś czasie coraz większa liczba aplikacji porzuci urządzenia 32 bitowe. Jest to oczywiście poprawna kolej rzeczy, jednak smuci to, zwłaszcza, że wielu z nas dalej korzysta z popularnych urządzeń z procesorami Snapdragon 80x i starszymi…

Źródło: GoogleAndroid

Jeżeli znalazłeś/aś literówkę w tekście, to daj nam o tym znać zaznaczając kursorem problematyczny wyraz, bądź zdanie i przyciśnij Shift + Enter lub kliknij Zgłoś pomyłkę.