Android 12 var automātiski tulkot lietotnes jūsu dzimtajā valodā

Google strādā pie jaunas interfeisa tulkošanas funkcijas operētājsistēmā Android 12, kas varētu automātiski tulkot lietotnes jūsu dzimtajā valodā.

Ar vairāk nekā 2,5 miljardiem aktīvo lietotāju Android ir visplašāk izmantotā operētājsistēma pasaulē. Lai gan pati OS ir lokalizēta desmitiem dažādu valodu, tas neattiecas uz daudzām trešo pušu lietotnēm. Lielāki uzņēmumi var lokalizēt savas lietotnes iekšēji vai nolīgt profesionālus tulkošanas pakalpojumus, taču šīs iespējas nav ekonomiski iespējamas mazākām komandām vai neatkarīgiem lietotņu izstrādātājiem. Labākajā gadījumā mazāka komanda vai neatkarīgas lietotnes izstrādātājs var iegūt tulkojumus no tiem, kuriem tā ir dzimtā valoda, un sliktākajā gadījumā šī darba veikšanai var izmantot mašīntulkošanas pakalpojumus. Tomēr tas varētu mainīties Android 12, jo mēs esam redzējuši pierādījumus, kas liecina, ka Google, iespējams, strādā pie sistēmas, lai automātiski tulkotu lietotnes lietotāja interfeisu lietotāja dzimtajā valodā.

APK nojaukšana bieži vien var paredzēt funkcijas, kas var tikt iekļautas turpmākā lietojumprogrammas atjauninājumā, taču ir iespējams, ka kāda no šeit minētajām funkcijām var nebūt pieejama nākamajā laidienā. Tas ir tāpēc, ka šīs funkcijas pašlaik nav ieviestas tiešraidē, un izstrādātāji tos jebkurā laikā var izmantot nākamajā versijā.

Šīs nedēļas sākumā mēs ieguvām neizlaistu Android 12 būvējumu, kurā ir ietverts a dažas jaunas funkcijas un lietotāja interfeisa izmaiņas. Izpētot izdevumu, mēs atklājām daudz jaunu klašu sistēmā, kas saistītas ar jaunu "tulkošanas pakalpojums". Mūsu meklēšana sākās, kad atklājām divas jaunas atļaujas, kas pievienotas šai Android versijai 12: BIND_TRANSLATION_SERVICE un MANAGE_UI_TRANSLATION. Android sistēmas lietotāja saskarnei ir pirmā atļauja izveidot saiti ar lietotni, kurai ir otrā atļauja, ko pēc noklusējuma nosaka vērtība config_defaultTranslationService. Iespējams, tādu lietotni kā Google tulkotājs vai ierīces personalizācijas pakalpojumi var iestatīt kā tulkošanas pakalpojumu, taču Google var to atvērt trešo pušu lietotnēm kā MANAGE_UI_TRANSLATION atļaujai ir "loma", kas definēta kā viens no atbalstītajiem aizsardzības līmeņiem. Ja atceraties, Android 10 pievienojaLomas", kas nosaka lietotnes, kurām vajadzētu būt noteiktām privilēģijām; iespējams, ka Google kā lomu var pievienot "Tulkotājs", taču mēs nezinām, vai šo lomu var piešķirt lietotāja instalētajām lietotnēm.

Jebkurā gadījumā mēs atradām atsauces uz šīm atļaujām ietvara kodā, kur atradām pierādījumus tam jaunais tulkošanas kods iedarbojas uz skatiem aktivitātēs, nevis uz ekrānuzņēmumu vai jaunākajām lietotnēm panelis. Google Lens jau var tulkot tekstu ekrānuzņēmumos vai jaunāko lietotņu panelī, un kopā ar ierīces personalizācijas pakalpojumiem tekstu var veikt tulkots tieši no neseno lietotņu paneļa. Tikmēr Android nolūku sistēma jau ļauj tulkot teksta pamata kopīgošanu. Tomēr šī jaunā sistēma šķiet sarežģītāka un zemāka līmeņa, un mēs uzskatām, ka tās mērķis ir tiešs tulkot tekstu lietotnes lietotāja interfeisā, aizstājot tekstu rindiņā, lai tulkojums justos dabiskāks.

Mēs izskatījām jaunākās Google tulkotāja un ierīču personalizēšanas pakalpojumu versijas, taču neatradām nekādus pierādījumus par šīs jaunās API integrēšanu. Iespējams, šī API tieši neizmantos Google tulkotāju, bet gan citu API galapunktu. Ja šī funkcija tiks ieviesta saskaņā ar mūsu pieņēmumiem, mēs šaubāmies, vai Google par šo funkciju no lietotājiem iekasēs maksu. Tomēr ir iespējams, ka tie var iespējot lietotāja interfeisa tulkojumus, ko nodrošina Google tulkotājs kā pikseļu ekskluzīvu funkciju. Tā kā šķiet, ka ietvars tiek izstrādāts AOSP, iespējams, ka oriģinālo iekārtu ražotāji var definēt paši savu tulkošanas pakalpojumu, ja viņi nevēlas izmantot Google.

Trešo pušu lietotnēm, piemēram AllTrans gadiem ilgi ir piedāvājuši savu lietotāja interfeisa tulkošanas līdzekli. Šīs modifikācijas, ko nodrošina Xposed Framework, darbojas līdzīgi tam, kā mēs domājam, ka darbosies Android 12 lietotāja interfeisa tulkojums, tieši piesaistot lietotnes skatus, lai tulkotu un aizstātu tekstu. Tomēr, lai izmantotu šīs modifikācijas, lietotājiem ir jāpaņem sava API atslēga tulkošanas pakalpojumam, jo ​​koplietotā atslēga diezgan ātri pārsniegtu bezmaksas ierobežojumu. Tā kā Google šķietami veido lietotāja interfeisa tulkošanas ietvaru tieši operētājsistēmā Android 12, lietotājiem vairs nevajadzēs sakņot ierīci, lai tulkotu lietotnes savā dzimtajā valodā. Cerams, ka tas padarīs tūkstošiem lietotņu pieejamākas lietotājiem visā pasaulē.

Izmantojot Xposed Framework, AllTrans pievienojas teksta skatiem lietotnēs, lai tulkotu tekstu, izmantojot Microsoft Translator.

Izstrādātāji gūs labumu arī no automatizētajiem lietotāja interfeisa tulkojumiem. Izstrādātāji, kuriem nav resursu, lai tulkotu savu lietotni, vai kuri nevēlas izmantot mašīntulkošanu, var ļaut operētājsistēmai rīkoties. Mašīntulkotas lietotnes izlaišana var radīt negatīvas atsauksmes no lietotājiem, kuri vaino izstrādātāju sliktajā tulkojumā, bet lietotājs paši norīkos operētājsistēmu, lai tulkotu lietotni, radīs mazāku neapmierinātību, jo lietotājs labāk saprot, kur vainot par sliktu tulkots teksts.

Lai gan mēs esam diezgan pārliecināti, ka šī funkcija ir paredzēta lietotāja interfeisa tulkošanai lietotnēs, mēs neesam 100% pārliecināti, ka tas tā ir, kamēr mēs neredzam šo funkciju. Alternatīva šīs funkcijas izmantošana būtu lietotāja interfeisa tulkošana operētājsistēmā vai tikai sistēmas lietotnēs, taču mēs uzskatām, ka tas ir maz ticams. jo OS jau ir plaši lokalizēta, un jebkuru lokalizāciju var veikt pirms ierīces izvešanas no rūpnīcas vai izmantojot OTA Atjaunināt. No otras puses, Google un oriģinālo iekārtu ražotāji nevar ņemt vērā, kuras valodas lietotne atbalsta, tāpēc šī funkcija palīdzētu aizpildīt nepilnības. Ņemot vērā, ka Google izstrādā šo funkciju skata līmenī, padarot to tā, lai to varētu izmantot visās lietotnēs, ir lielāka iespēja, ka tā ir paredzēta lietošanai lietotnēs, nevis operētājsistēmā. Tomēr atkal mēs nevarēsim droši zināt, kamēr šī funkcija netiks izlaista, kas var notikt un var nenotikt Android 12 stabilajā laidienā.

Paldies izstrādātājiem Kvinijs899 un kdrag0n par palīdzību šī koda analīzē. Paldies arī PNF programmatūrai par lietošanas licenci JEB dekompilators, profesionāla līmeņa reversās inženierijas rīks Android lietojumprogrammām.