Гоогле ради на новој функцији превођења корисничког интерфејса у Андроиду 12 која би могла аутоматски да преводи апликације на ваш матерњи језик.
Са преко 2,5 милијарди активних корисника, Андроид је најраспрострањенији оперативни систем широм света. Иако је сам ОС локализован на десетине различитих језика, то није случај са многим апликацијама трећих страна. Веће компаније могу локализовати своје апликације у компанији или ангажовати професионалне услуге превођења, али ове опције нису економски изводљиве за мање тимове или независне програмере апликација. У најбољем случају, мањи тим или програмер независних апликација може да тражи преводе са изворних говорника, ау најгорем могу да користе услуге машинског превођења да би обавили посао. Међутим, ово би се могло променити у Андроид 12, као што смо видели доказе који сугеришу да Гоогле можда ради на оквиру за аутоматско превођење корисничког интерфејса апликације на матерњи језик корисника.
Растављање АПК-а често може предвидети функције које могу стићи у будућем ажурирању апликације, али је могуће да било која од функција које овде помињемо можда неће успети у будућем издању. То је зато што ове функције тренутно нису примењене у живој верзији и програмери могу да их повуку у било ком тренутку у будућој верзији.
Раније ове недеље, добили смо необјављену верзију Андроида 12 која садржи а неколико нових функција и промена корисничког интерфејса. Док смо копали по издању, открили смо гомилу нових класа у оквиру који се односи на нови „услуга превођења“. Наша потрага је почела када смо открили две нове дозволе додате овој верзији Андроид-а 12: BIND_TRANSLATION_SERVICE
и MANAGE_UI_TRANSLATION
. Андроид-ов СистемУИ држи претходну дозволу да се повеже са апликацијом која има другу дозволу, која је подразумевано дефинисана вредношћу config_defaultTranslationService
. Претпоставља се да се апликација попут Гоогле преводиоца или услуга персонализације уређаја може подесити као услуга превођења, али Гоогле може да је отвори за апликације трећих страна као MANAGE_UI_TRANSLATION
дозвола има "улогу" дефинисану као један од подржаних нивоа заштите. Ако се сећате, Андроид 10 је додао „Улоге„ које дефинишу апликације које треба да имају одређене привилегије; могуће је да Гоогле може да дода „Преводилац“ као улогу, али не знамо да ли се ова улога може доделити апликацијама које је инсталирао корисник.
У сваком случају, пронашли смо референце на ове дозволе у коду оквира, где смо уочили доказе да је ово нови преводни код делује на приказе унутар активности, а не на снимак екрана или недавне апликације панел. Превођење текста у оквиру снимака екрана или панела са недавним апликацијама већ може да уради Гоогле Ленс, а у комбинацији са услугама персонализације уређаја, текст се може преведен директно са панела недавних апликација. У међувремену, Андроидов систем намере већ омогућава основно дељење текста за превођење. Међутим, чини се да је овај нови оквир сложенији и нижег нивоа, и верујемо да има директан циљ преводите текст унутар корисничког интерфејса апликације, замењујући текст у линији да би превод био оригиналнији.
Испитали смо најновије верзије Гоогле преводиоца и услуга персонализације уређаја, али нисмо пронашли никакве доказе о интеграцији овог новог АПИ-ја. Могуће је да овај АПИ неће директно користити Гоогле преводилац, већ другу крајњу тачку АПИ-ја. Ако се ова функција имплементира у складу са нашим спекулацијама, сумњамо да ће Гоогле наплаћивати корисницима ову функцију. Међутим, могуће је да могу омогућити преводе корисничког интерфејса које покреће Гоогле преводилац као ексклузивну функцију за Пикел. Међутим, пошто се чини да оквир долази у АОСП, могуће је да ОЕМ произвођачи могу да дефинишу сопствену услугу превођења ако не желе да користе Гоогле-ове.
Апликације трећих страна попут АллТранс већ годинама нуде сопствену карактеристику превођења корисничког интерфејса. Покренути Кспосед Фрамеворк-ом, ови модови функционишу слично као што мислимо да ће функционисати превод корисничког интерфејса Андроид 12, директно се повезујући са приказима апликације да би превели и заменили текст. Међутим, ови модови захтевају од корисника да зграбе сопствени АПИ кључ за услугу превођења јер би дељени кључ прилично брзо прешао границу бесплатног. Међутим, с обзиром да Гоогле наизглед гради оквир за превођење корисничког интерфејса директно у Андроид 12, корисници више не би морали да рутавају свој уређај да би превели апликације на свој матерњи језик. Ово ће, надамо се, учинити хиљаде апликација доступнијим корисницима широм света.
Користећи Кспосед Фрамеворк, АллТранс се повезује са приказима текста унутар апликација да би превео текст користећи Мицрософтов преводилац.
Програмери ће такође имати користи од аутоматизованих превода корисничког интерфејса. Програмери који немају ресурсе да преведу своју апликацију или који не желе да користе машинско превођење могу препустити ОС-у да управља стварима. Објављивање машински преведене апликације може довести до негативних рецензија корисника који криве програмера за лош превод, али имају корисника сами усмеравају ОС да преведе апликацију ће резултирати мање фрустрације јер корисник боље разуме где да окриви било шта лоше преведени текст.
Иако смо прилично уверени да је ова функција намењена превођењу корисничког интерфејса унутар апликација, нисмо 100% сигурни да је то случај док не видимо функцију у акцији. Алтернативна употреба ове функције била би превођење корисничког интерфејса унутар ОС или само системских апликација, али мислимо да је то мало вероватно јер је ОС већ широко локализован и свака локализација се може обавити пре него што уређај напусти фабрику или преко ОТА ажурирање. С друге стране, Гоогле и ОЕМ-ови не могу да рачунају које језике апликација подржава, тако да би ова функција помогла да се попуни празнина. Узимајући у обзир да Гоогле развија ову функцију на нивоу приказа, што је чини тако да се може користити у свим апликацијама, такође чини вероватније да је намењена за употребу у апликацијама, а не у ОС-у. Опет, међутим, нећемо бити сигурни док се ова функција не објави, што се може, али не мора догодити у стабилном издању Андроида 12.
Хвала програмерима Куинни899 и кдраг0н за њихову помоћ у анализи овог кода. Такође хвала ПНФ софтверу што нам је дао лиценцу за коришћење ЈЕБ Децомпилер, алат за обрнути инжењеринг професионалног нивоа за Андроид апликације.