Play Butik vil kræve nye og opdaterede apps for at målrette mod nyere API-niveauer og distribuere indbygget kode med 64-bit support

Google har annonceret et sæt store nye krav til nye applikationer og applikationer, der opdateres i Google Play Butik. Forbered dine apps nu!

I et blogindlæg i dag har Google annonceret store kommende ændringer af applikationer indsendt til Play Butik. Disse ændringer er designet til at forbedre sikkerheden for slutbrugeren ved at kræve, at udviklere målretter mod nyere API-niveauer. Ydermere vil Google også begynde at kræve, at applikationer, der distribuerer native biblioteker, også leverer 64-bit versioner af disse biblioteker. Disse ændringer vil dog ikke træde i kraft før henholdsvis midten af ​​2018 og midten af ​​2019, så udviklere vil have masser af tid til at arbejde på opdateringer for at imødekomme disse nye krav. Lad os dykke lidt dybere ned i, hvad disse ændringer betyder for både udviklere og slutbrugere.


Ændring #1: Målretning mod et nyere API-niveau

Det mest aktuelle API-niveau er 27, hvilket svarer til Android 8.1 udgivelse. Før det er API-niveau 26, som svarer til Android 8.0 Oreo. Starter

august 2018, nogen nye applikationer der indsendes til Play Butik skal målrettes mod mindst API-niveau 26. Desuden starter november 2018, opdateringer til eksisterende applikationer skal også mål API-niveau 26 eller højere.

Disse krav er dog ikke statiske. I 2019 vil Google øg targetSdkVersion-kravet efter et år efter hver større Android-udgivelse. For eksempel, 1 år efter udgivelsen af ​​Android P, skal applikationer målrette API-niveau 28 eller højere.

Husk, at disse krav er kun for mål-API-niveauet, og ikke for minimum. Det betyder, at du stadig kan bygge applikationer, der fungerer på ældre versioner af Android, såsom Android Lollipop. Dette er vigtigt, fordi der stadig er millioner af brugere, der kører ældre Android-versioner på deres enheder. Hvilket minimum API-niveau skal du implementere? Følge efter @minSdkVersion på Twitter for at holde dig opdateret om, hvornår du bør ændre det.

Hvad angår applikationer, der ikke vil modtage nogen opdateringer i en overskuelig fremtid, vil intet ændre sig. Disse applikationer vil fortsætte med at eksistere, selvom de selvfølgelig ikke vil være i stand til at drage fordel af nogen nye funktioner introduceret i nyere SDK'er. Hvis udviklere af en sådan applikation ønsker at opdatere deres app af en eller anden grund, så bliver de nødt til at opdatere deres app for at opfylde kravene i den højere API niveau.

Dette er en velsignelse for brugersikkerheden. Android 6.0 Marshmallow introducerede runtime-tilladelser, som beskytter visse følsomme tilladelser såsom placering eller kontaktadgang bag en dialogboks, som brugeren skal acceptere. Imidlertid kunne applikationer komme uden om runtime-tilladelser ved at målrette mod et ældre API-niveau. Hvis en applikation målretter mod dette ældre API-niveau, gives tilladelser under installationen.

Derudover er Android Oreos nye begrænsninger for kørsel af app i baggrunden, implicitte udsendelsesmodtagere og begrænsninger for baggrundsplacering kun et krav for applikationer, der er målrettet mod API-niveau 26. Da dette API-niveau vil være et krav i fremtiden, betyder det, at enhver bruger, der kører Android Oreo, ikke behøver at bekymre sig om, at en app ikke bliver optimeret af Android Oreos nye begrænsninger.

En note om fremtidige Android-versioner

Der er en klausul i dette nye krav, som er interessant. For at citere blogindlægget:

Fremtidige Android-versioner vil også begrænse apps, der ikke er målrettet mod et nyligt API-niveau og har en negativ indvirkning på ydeevne eller sikkerhed.

Mens det tidligere krav kun påvirker nye applikationer eller opdaterede applikationer, der sendes til Play Butik, ser denne sætning ud til at foreslår, at en fremtidig version af Android også vil lægge restriktioner på applikationer som ikke holder sig ajour med de seneste API-niveauer. Android 8.0 Oreo introduceret kun køretidstilladelser som kræver, at en applikation målretter API-niveau 23, så Google kan begynde at indlæse nye funktioner bag sådanne begrænsninger.

Ændring #2: 64-bit understøttelse af indbygget kode

De fleste flagskibs Android-enheder har chips bygget på en 64-bit arkitektur. Ifølge Google har over 40% af enhederne 64-bit support. Apps, der distribuerer indbyggede biblioteker, kan i øjeblikket kun være baseret på 32-bit kode, og 64-bit enheder vil stadig fungere på grund af bagudkompatibilitet.

Men da 64-bit kode kan give bedre ydeevne, vil Google det kræve, at udviklere, hvis apps bruger native biblioteker, skal have et 64-bit alternativ at køre på kun 64-bit enheder. Programmer kan omfatte både et 32-bit og et 64-bit bibliotek eller distribuere flere versioner af APK'en med begge biblioteker ved hjælp af flere APK funktion i udviklerkonsollen. Dette krav træder i kraft fra august 2019 og påvirker ikke applikationer, der ikke kører nogen indbygget kode.

Denne sidste ændring kræver ingen handling fra udviklernes side. I stedet vil dette blive håndteret af Google Play automatisk. Play Butik begynder at tilføje en lille mængde metadata til hver APK som vil bekræfte, at en applikation blev officielt distribueret af Google Play Butik. Google Plays maksimale APK-størrelse vil blive øget for at tage højde for disse nye metadata, men intet bør ændres i udviklerens applikationer.


Kilde: Google