Tilfældige musings på Android 12 Beta 2

Tilfældige musings på Android 12 Beta 2

Hver gang Google frigiver en opfølgende forhåndsvisning af udvikler, snubler jeg gennem den inkrementelle API-forskelle-rapport, udgivelsesnoterne og endda udgivelsesblogindlægget for at se om der er ting, der berettiger mere opmærksomhed fra udviklere. Jeg prøver at understrege ting, som mainstream-udviklere måske bruger, males måske ikke får så meget opmærksomhed, fordi de er begravet i JavaDocs.

Beta 2 har lidt mere ændring i API-overfladen, finish jeg ville forvente … og alligevel har den stadig ikke alt, hvad der muligvis endnu vises i Android 12.

Hvad Google synes er vigtigt

Af de ting, som Google fremhævede i Beta 2, er det kun få, der kræver, at udviklere gør noget. Det er pænt, i betragtning af at dette er Beta 2. For eksempel behøver apps ikke at skifte for at mikrofon- og kameraindikatorerne skal vises, eller for at brugere får besked om apps, der læser fra udklipsholderen.

Der er en ny SensorPrivacyManager, som kan fortælle dig, om enheden understøtter mikrofon og kamera skifter. Det kan ikke fortælle dig, hvad tilstanden på skiften er – du bruger naked mikrofonen og kameraet normalt og får lydløs / tom output, hvis disse hardwarefunktioner er slået fra.

Det nye Privateness Dashboard er meget rart. Hvis du vil have, at din app kan give forklaringer på, hvorfor du brugte visse harmful tilladelser, kan du eksportere en aktivitet til det, males vær opmærksom på dokumenterne omkring ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD.

Hvad der stille blev dokumenteret

Et eller andet sted langs linjen, uden en meddelelse, som jeg kan huske, er AppSearch nu dokumenteret.

AppSearch koger ned til en fuldtekst-søgemaskine med en API, som udviklere kan bruge til at indeksere indhold og søge i det senere. Dokumenterne sammenligner det specifikt med SQLites søgefunktion i fuldtekst.

Dette er bestemt en god tilføjelse. Dokumenterne peger på en androidx.appsearch artefakt sammen med androidx.appsearch:appsearch-compiler og androidx.appsearch:appsearch-local-storage, selvom. Det er uklart, hvad forholdet er mellem disse artefakter og Android 12 API.

Hvad får mig til at spekulere “Hvad er de? Venter Til?”

Visnings-oversættelses-API’erne eksisterer stadig og modtog deres egne opdateringer. Alligevel er der intet tegn på dokumentation, den måde, ting krigede ind for AppSearch. Og der var nogle mærkelige tilbageførsler, såsom FEATURE_TRANSLATION bliver fjernet.

Især er der intet tegn på, hvordan apps kan kontrollere denne oversættelse, herunder fravalg, hvis appudviklerne ikke er i stand til at understøtte brugere med Google-leverede oversættelser.

Hvad er nyt og (potentielt) vigtigt

Der er en ny BLUETOOTH_ADVERTISE tilladelse, beskrevet som “Krævet for at kunne annoncere for Bluetooth-enheder i nærheden”. Det eneste, jeg ser som kræver det, er ACTION_REQUEST_DISCOVERABLE, og det har kun brug for det, når din targetSdkVersion når 31.

Hvad der fortsætter med at blive sød, sød kærlighed

RemoteViews fik flere ændringer. Fra rækkefølgen af ​​ændringer føler de sig målrettet mod app-widgets mere finish til andre anvendelser af RemoteViews (f.eks. brugerdefinerede meddelelser).

Bobler fortsætter deres march mod nytten:

Den nye “lys” API fik nogle ændringer. Det er stadig uklart, hvad dette handler om.

Hvad bemærkelsesværdigt blev omdøbt

Den “optimerede” lageradgang fra før er nu “rå” lageradgang, som det ses i
requestRawStorageAccess
og relaterede ændringer til ApplicationInfo. Det virker stadig begrænset til filadministratorer og gallerier.

VIBRATOR_SERVICE er forældet, da de styrer dig mod det nye VibratorManager.

Hvad mødte sit utidige (?) Død

Vi kan ikke længere spørge, om et job er et forgrundsjob.

Det hele android.service.dataloader pakke, der blev tilføjet i Beta 1, blev nuked i Beta 2.

getDefaultAdapter()BluetoothManager er forældet til fordel for getAdapter(). getAdapter() har eksisteret siden API niveau 18, selvom, så denne ændring forhåbentlig ikke vil være en stor.

DATE_FORMATSettings.System er forældet til fordel for TIME_12_24.

Hvad ellers fangede mit øje

“Attribution tags” tilføjet i Beta 1 blev lidt lettere i Beta 2, da det ser ud til, at vi muligvis kan tilføje dem i manifestet.

Vi kan finde ud af, om vores app fik muligheden for at planlægge nøjagtige alarmer.

Der er en ny PerformanceHintManager.

Vi kan hente og indstille “effektfarven” til RippleDrawable. Det er uklart, om dette henviser til den gnistrende effekt, der blev set i tidligere eksempler. Hvis det gør det, og dine designere hader gnistreffekten med tusind solens brændende lidenskab, kan dette føre til en mulighed for at deaktivere den i din app.


Er du interesseret i Jetpack Compose? jetc.dev har et ugentligt nyhedsbrev med de nyeste artikler, eksempler og andre detaljer om Compose-udvikling!

– 10. juni 2021