Play Butik kommer att kräva nya och uppdaterade appar för att rikta in sig på nyare API-nivåer och distribuera inbyggd kod med 64-bitars support

Google har tillkännagett en uppsättning nya stora krav för nya applikationer och applikationer som uppdateras i Google Play Butik. Förbered dina appar nu!

I ett blogginlägg idag har Google meddelat stora kommande förändringar av ansökningar som skickas in till Play Butik. Dessa ändringar är utformade för att förbättra säkerheten för slutanvändaren genom att kräva att utvecklare riktar in sig på nyare API-nivåer. Dessutom kommer Google också att börja kräva att applikationer som distribuerar inbyggda bibliotek också tillhandahåller 64-bitarsversioner av dessa bibliotek. Dessa ändringar kommer dock inte att träda i kraft förrän i mitten av 2018 respektive mitten av 2019, så utvecklare kommer att ha gott om tid att arbeta med uppdateringar för att möta dessa nya krav. Låt oss dyka lite djupare in i vad dessa förändringar betyder för både utvecklare och slutanvändare.


Ändring #1: Inriktning på en nyare API-nivå

Den senaste API-nivån är 27, vilket motsvarar Android 8.1 release. Innan dess är API-nivå 26 som motsvarar Android 8.0 Oreo. Startande

augusti 2018, någon nya applikationer som skickas till Play Butik måste inrikta sig på minst API-nivå 26. Dessutom börjar november 2018, uppdateringar av befintliga applikationer måste också mål API-nivå 26 eller högre.

Dessa krav är dock inte statiska. Under 2019 kommer Google öka kravet på targetSdkVersion efter ett år efter varje större Android-version. Till exempel, 1 år efter lanseringen av Android P måste appar inrikta sig på API-nivå 28 eller högre.

Tänk på att dessa krav är endast för mål-API-nivån, och inte för ett minimum. Det betyder att du fortfarande kan bygga applikationer som fungerar på äldre versioner av Android som Android Lollipop. Detta är viktigt eftersom det fortfarande finns miljontals användare som kör äldre Android-versioner på sina enheter. Vilken lägsta API-nivå ska du implementera? Följ @minSdkVersion på Twitter för att hålla dig uppdaterad om när du bör ändra det.

När det gäller applikationer som inte kommer att få några uppdateringar under överskådlig framtid kommer ingenting att förändras. Dessa applikationer kommer att fortsätta att existera, även om de naturligtvis inte kommer att kunna dra nytta av några nya funktioner som introduceras i nyare SDK: er. Om utvecklare av en sådan applikation vill uppdatera sin app av någon anledning, då måste de uppdatera sin app för att uppfylla kraven i det högre API: et nivå.

Detta är en välsignelse för användarsäkerheten. Android 6.0 Marshmallow introducerade runtime-behörigheter, som skyddar vissa känsliga behörigheter som plats eller kontaktåtkomst bakom en dialogruta som användaren måste acceptera. Applikationer kan dock komma runt körtidsbehörigheter genom att rikta in sig på en äldre API-nivå. Om en applikation är inriktad på den här äldre API-nivån, beviljas behörigheter under installationen.

Dessutom är Android Oreos nya begränsningar för exekvering av bakgrundsappar, implicita sändningsmottagare och bakgrundsplatsbegränsningar endast ett krav för applikationer som är inriktade på API-nivå 26. Eftersom denna API-nivå kommer att vara ett krav i framtiden, betyder det att alla användare som kör Android Oreo inte behöver oroa sig för att en app inte optimeras av Android Oreos nya begränsningar.

En anteckning om framtida Android-versioner

Det finns en klausul i detta nya krav som är intressant. För att citera blogginlägget:

Framtida Android-versioner kommer också att begränsa appar som inte är inriktade på en ny API-nivå och påverkar prestanda eller säkerhet negativt.

Medan det tidigare kravet endast påverkar nya applikationer eller uppdaterade applikationer som skickas till Play Butik, verkar denna mening vara föreslår att en framtida version av Android också kommer att lägga begränsningar på applikationer som inte håller sig uppdaterade med de senaste API-nivåerna. Android 8.0 Oreo introduceras runtime-behörigheter som kräver att en applikation är inriktad på API-nivå 23, så att Google kan börja ta in nya funktioner bakom sådana begränsningar.

Ändring #2: 64-bitars stöd för inbyggd kod

Majoriteten av flaggskeppet Android-enheter har chips byggda på en 64-bitars arkitektur. Enligt Google har över 40 % av enheterna 64-bitarsstöd. Appar som distribuerar inbyggda bibliotek kan för närvarande endast baseras på 32-bitars kod, och 64-bitarsenheter kommer fortfarande att fungera på grund av bakåtkompatibilitet.

Men eftersom 64-bitars kod kan ge bättre prestanda kommer Google att göra det kräver att utvecklare vars appar använder inbyggda bibliotek måste ha ett 64-bitars alternativ för att köras på enheter som endast är 64-bitars. Applikationer kan inkludera både ett 32-bitars och ett 64-bitars bibliotek, eller distribuera flera versioner av APK-filen med något av biblioteken med hjälp av flera APK funktion i utvecklarkonsolen. Detta krav träder i kraft från och med augusti 2019 och påverkar inte applikationer som inte kör någon inbyggd kod.

Denna sista ändring kräver ingen åtgärd från utvecklarnas sida. Istället kommer detta att hanteras av Google Play automatiskt. Play Butik börjar lägga till en liten mängd metadata till varje APK som kommer att verifiera att en applikation officiellt distribuerades av Google Play Butik. Google Plays maximala APK-storlek kommer att ökas för att ta hänsyn till denna nya metadata, men ingenting bör ändras i utvecklarnas appar.


Källa: Google