Android 12 kan automatisk oversette apper til ditt morsmål

Google jobber med en ny UI-oversettelsesfunksjon i Android 12 som automatisk kan oversette apper til ditt morsmål.

Med over 2,5 milliarder aktive brukere er Android det mest brukte operativsystemet på verdensbasis. Mens selve operativsystemet har blitt lokalisert til dusinvis av forskjellige språk, er det ikke tilfellet for mange tredjepartsapper. Større selskaper kan lokalisere appene sine internt eller leie profesjonelle oversettelsestjenester, men disse alternativene er ikke økonomisk gjennomførbare for mindre team eller uavhengige apputviklere. I beste fall kan et mindre team eller utviklere av uavhengige apper samle oversettelser fra morsmål, og i verste fall kan de bruke maskinoversettelsestjenester for å gjøre jobben. Dette kan imidlertid endre seg Android 12, som vi har sett bevis som tyder på at Google kan jobbe med et rammeverk for automatisk oversettelse av en app-grensesnitt til brukerens morsmål.

En APK-nedbrytning kan ofte forutsi funksjoner som kan komme i en fremtidig oppdatering av en applikasjon, men det er mulig at noen av funksjonene vi nevner her kanskje ikke kommer i en fremtidig utgivelse. Dette er fordi disse funksjonene for øyeblikket ikke er implementert i live-bygget og kan trekkes når som helst av utviklerne i en fremtidig build.

Tidligere denne uken fikk vi en uutgitt Android 12-bygning som inneholder en et par nye funksjoner og endringer i brukergrensesnittet. Mens vi gravde gjennom utgivelsen, oppdaget vi massevis av nye klasser i rammeverket relatert til en ny "oversettelsestjeneste." Søket vårt begynte da vi oppdaget to nye tillatelser lagt til denne versjonen av Android 12: BIND_TRANSLATION_SERVICE og MANAGE_UI_TRANSLATION. Androids SystemUI har den førstnevnte tillatelsen til å binde seg til en app som har den sistnevnte tillatelsen, som som standard er definert av verdien config_defaultTranslationService. Antagelig kan en app som Google Translate eller Device Personalization Services settes opp som oversettelsestjenesten, men Google kan åpne den for tredjepartsapper som MANAGE_UI_TRANSLATION tillatelse har "rolle" definert som et av de støttede beskyttelsesnivåene. Hvis du husker det, la Android 10 til "Roller" som definerer apper som skal ha visse privilegier; det er mulig at Google kan legge til «Oversetter» som en rolle, men vi vet ikke om denne rollen kan gis til apper installert av brukeren.

I alle fall fant vi referanser til disse tillatelsene i rammekode, der vi fant bevis på at dette ny oversettelseskode virker på visninger i aktiviteter i stedet for på et skjermbilde eller de siste appene panel. Oversettelse av tekst i skjermbilder eller panelet nylige apper kan allerede gjøres av Google Lens, og i forbindelse med tjenester for personlig tilpasning av enheter kan tekst oversatt rett fra panelet nylige apper. I mellomtiden tillater Androids intensjonssystem allerede grunnleggende deling av tekst for å oversette. Dette nye rammeverket ser imidlertid ut til å være mer komplekst og lavt nivå, og vi tror det tar sikte på direkte oversette tekst i brukergrensesnittet til en app, og erstatte tekst på linje for å få oversettelsen til å føles mer naturlig.

Vi undersøkte de nyeste versjonene av Google Translate og Device Personalization Services, men fant ingen bevis for integrering av denne nye API-en. Det er mulig at denne API-en ikke vil bruke Google Translate direkte, men snarere et annet API-endepunkt. Hvis denne funksjonen implementeres i tråd med våre spekulasjoner, tviler vi på at Google vil belaste brukere for denne funksjonen. Det er imidlertid mulig de kan aktivere UI-oversettelser drevet av Google Translate som en Pixel-eksklusiv funksjon. Siden rammeverket ser ut til å komme til AOSP, er det imidlertid mulig at OEM-er kan definere sin egen oversettelsestjeneste hvis de ikke vil bruke Googles.

Tredjepartsapper som AllTrans har i årevis tilbudt en egen UI-oversettelsesfunksjon. Drevet av Xposed Framework fungerer disse mods på samme måte som vi tror Android 12s UI-oversettelse vil fungere, og kobler seg direkte inn i en app-visninger for å oversette og erstatte teksten. Disse modsene krever imidlertid at brukerne henter sin egen API-nøkkel for en oversettelsestjeneste siden en delt nøkkel ville gå over gratisgrensen ganske raskt. Ettersom Google tilsynelatende bygger et grensesnitt-oversettelsesrammeverk direkte inn i Android 12, trenger imidlertid ikke brukere lenger å rote enheten for å oversette apper til morsmålet. Dette vil forhåpentligvis gjøre tusenvis av apper mer tilgjengelige for brukere over hele verden.

Ved å bruke Xposed Framework kobler AllTrans seg inn i tekstvisninger i apper for å oversette teksten ved hjelp av Microsofts Translator.

Utviklere vil også dra nytte av automatiserte UI-oversettelser. Utviklere som ikke har ressurser til å oversette appen sin eller som ikke vil bruke maskinoversettelse, kan la OS håndtere ting. Å slippe en maskinoversatt app kan resultere i negative anmeldelser fra brukere som klandrer utvikleren for den dårlige oversettelsen, men som har brukeren selv pålegger operativsystemet å oversette appen, vil resultere i mindre frustrasjon ettersom brukeren bedre forstår hvor de skal legge skylden for dårlig oversatt tekst.

Selv om vi er ganske sikre på at denne funksjonen er ment å oversette brukergrensesnittet i apper, er vi ikke 100 % sikre på at det er tilfelle før vi ser funksjonen i aksjon. En alternativ bruk av denne funksjonen ville være å oversette brukergrensesnittet i operativsystemet eller bare systemapper, men vi tror det er usannsynlig fordi operativsystemet både allerede er vidt lokalisert og enhver lokalisering kan gjøres før enheten forlater fabrikken eller via en OTA Oppdater. På den annen side kan ikke Google og OEM-er redegjøre for hvilke språk en app støtter, så denne funksjonen vil bidra til å fylle tomrommet. Tatt i betraktning at Google utvikler denne funksjonen på View-nivå, slik at den kan brukes i alle apper, gjør det også mer sannsynlig at den er ment for bruk i apper i stedet for OS. Igjen, men vi vet ikke sikkert før denne funksjonen blir utgitt, noe som kanskje eller ikke kan skje i den stabile Android 12-utgivelsen.

Takk til utviklere Quinny899 og kdrag0n for deres hjelp med å analysere denne koden. Også takk til PNF Software for å gi oss en lisens til bruk JEB Dekompiler, et omvendt utviklingsverktøy av profesjonell kvalitet for Android-applikasjoner.