Lūk, kāpēc Nova Launcher labāk darbojas Google Pixel tālruņos

Google pievienoja API, kas ļauj trešo pušu palaišanas programmām, piemēram, Nova Launcher, rādīt plūstošākas pārejas animācijas. Tagad tas ir pieejams tikai Pixel tālruņiem.

Agrāk trešo pušu palaišanas programmas bieži sniedza labāku pieredzi nekā akciju palaišanas programma, kas atrodama lielākajā daļā Android tālruņu. Tomēr, pārveidojot jaunāko lietotņu ekrānu un ieviešot žestus operētājsistēmā Android 9 Pie, trešo pušu palaišanas ierīces tika nostādītas neizdevīgā situācijā, jo šī jaunā pieredze tika integrēta krājumā palaišanas programma. Laika gaitā Google ir mēģinājis padarīt trešo pušu palaišanas programmu ne tik briesmīgu, izmantojot žestus, un viņiem tas nesen ir sācis gūt panākumus.

Ja pēdējo dažu mēnešu laikā Google Pixel tālrunī esat izmantojis jaunāko Nova Launcher beta versiju, iespējams, esat pamanījis mainīgas animācijas, izmantojot žestu navigāciju. Diemžēl šīs pašas animācijas jūs neredzēsit, vismaz pagaidām izmantojot Nova Launcher nevienā citā ierīcē. Lai saprastu, kāpēc mums vispirms ir īsi jāpaskaidro, kas atšķir trešo pušu palaidējus, piemēram, Nova Launcher, no akciju palaišanas ierīcēm, piemēram, Google Pixel Launcher.

Google pirmo reizi ieviesa žestu navigāciju operētājsistēmā Android 9 Pie. Lai žesti būtu pēc iespējas plūstošāki, Google bija nepieciešams, lai lietotņu pārejas izskatītos nevainojami. Viņi arī vēlējās ļaut lietotājiem piekļūt visam lietotņu sarakstam no jaunāko lietotņu ekrāna. Lai veiktu abas šīs darbības, Google nolēma pārvietot kodu, kas apstrādā jaunāko lietotņu ekrānu, no Android SystemUI uz Launcher3 — Android atvērtā koda palaišanas lietotni, no kuras lielākā daļa OEM akciju palaišanas ierīču tiek izmantotas. Tādējādi, QuickStep komponents ir dzimis, un tā priviliģētā rakstura dēļ Android ļauj iestatīt tikai iepriekš instalēto palaišanas programmu kā jaunāko lietotņu nodrošinātāju. Tas var būt ignorēts ar root piekļuvi ja trešās puses palaidējs to atbalsta, taču lielākajai daļai lietotāju tas nozīmē, ka trešās puses palaišanas programma vienmēr paļausies uz akciju palaišanas programmu, lai apstrādātu žestus un jaunāko lietotņu ekrānu. Rezultāts, kā, iespējams, ir pieredzējis vairums no jums, var būt nedaudz nežēlīgs ar pārejām, kas neizskatās plūstošas ​​un viengabalainas. Ja vien neizmantojat Google Pixel tālruni, tas ir.

Lielākajā daļā Google Pixel tālruņu ir API, ko trešās puses palaišanas programmas var izmantot, lai pāreja no lietotnes atpakaļ uz sākuma ekrānu izskatītos daudz dabiskāka. Dažas trešās puses palaišanas programmas, piemēram, Niagāras palaišanas iekārta un iepriekšminētais Nova Launcher izmanto šīs API priekšrocības, lai gan pēdējais to iekļauj tikai savā izstrādes 7. veidojumi. Kad tiek izmantota šī API, trešās puses palaišanas lietotne saņem nodomu un atzvanu no QuickStep ikreiz, kad lietotājs veic vilkšanas žestu, lai dotos mājās. Pēc tam trešās puses palaišanas programma var dot mājienu žestu sistēmai, kā animēt logu, kad tas tiek samazināts līdz lietotnes ikonai.

Šis ir piemērs tam, kā tas izskatās Niagara Launcher, pateicoties palaišanas programmas izstrādātājam 8 bitu bedre:

Un šeit ir salīdzinājums, kas parāda, kā animācija izskatās uz ASUS ROG tālrunis 5 un Google Pixel 4, abās darbojas Nova Launcher v7.0.25 (jaunākā beta versija publicēšanas brīdī) un Android 11:

\r\n https://www.youtube.com/watch? v=equ-8yDw_Do\r\n

Tagad jums varētu rasties jautājums: vai šī API ir paredzēta tikai Google Pixel tālruņiem? Atbilde ir nē, tā nav. API ir daļa no Launcher3/QuickStep un var atrast AOSP, kas nozīmē, ka tā ir pieejama jebkurai OEM palaišanas programmai. Kamēr API bija apņēmusies Launcher3 iekšēji 2020. gada 21. jūlijā, šķiet, ka tā bija apvienojās AOSP galvenajā filiālē ar Android R QPR1 izlaidumu decembrī.

API, kas ļauj Nova Launcher un Niagara Launcher justies vietējām Google Pixel tālruņos.

Kevins Barijs, Nova Launcher izstrādātājs un viens no pirmajiem, kurš pamanīja šo API, mums pastāstīja, ka viņam ir aizdomas par daļu no iemesls, kāpēc oriģinālo iekārtu ražotāji neizmanto šo API savos Launcher3 dakšās, ir tas, ka tas tika ieviests nedaudz vēlu Android 11 laidienā. cikls. Lai apvienotu lielas AOSP izmaiņas, ir jāpieliek daudz pūļu, un Android R QPR1 atjauninājumā noteikti bija daudz no tiem. Iepriekšējos gados mēs šos koda izlaidumus saucām par "apkopes izlaidumu", taču Google vairs tos nedara pēc oriģinālo iekārtu ražotāju atteikuma (vai tā es esmu dzirdējis). Tāpēc LineageOS, populārā Android pielāgotā ROM, savu jaunāko versiju sauc par "LineageOS 18.1", nevis "LineageOS 18", lai norādītu, ka ROM pamatā ir jaunākā Android 11 kodu bāze, nevis sākotnējais Android 11 laidiens.

Ir arī vērts atzīmēt, ka šī API ir pieejama tikai Google Pixel tālruņos pēc Decembra pikseļu funkcijas samazināšanās, kas sakrīt ar publisko Android R QPR1 izlaidumu. Un neskatoties uz to, ka Pixel 2 to iegūst pēdējais atjauninājums decembrī, šajā atjauninājumā nebija iekļauta Android R QPR1 koda bāze, tāpēc Pixel 2 īpašniekiem, kuros darbojas Nova Launcher v7, nav tādas pašas pieredzes kā citiem Pixel tālruņiem. (Pixel 2 īpašnieki var sānielādēt jaunāku Pixel Launcher versiju, kurai ir API no jaunākas Pixel ierīces, taču lietotāju pārskati norāda Animācija joprojām ir kļūdaina, pat ja tā ik pa laikam darbojas. Atgādinām, ka Pixel Launcher ir izveidots, pamatojoties uz Launcher3, tāpat kā lielākā daļa akciju palaišanas ierīču, taču tajā ir iekļautas arī dažas Pixel ekskluzīvas funkcijas.)

Tātad, kas būs nepieciešams, lai šo API pievienotu citām Android ierīcēm? Diemžēl uz to nav vienkāršas atbildes, jo mēs precīzi nezinām, kā katrs OEM izstrādā savu palaišanas programmu. Ņemot vērā, kā Google stingri kontrolē pilnekrāna žestu navigāciju, mums ir aizdomas, ka lielākā daļa oriģinālo iekārtu ražotāju īpaši nepārveido kodu, kas saistīts ar žestiem un/vai QuickStep. Ja vien oriģinālā aprīkojuma ražotājs nedara visu iespējamo, lai atsauktu saistību izpildi, nepārkāptu kodu vai atteiktos atjaunināt Launcher3, tad mums vajadzētu redzēt, ka šī API tiek pievienota OEM palaišanas ierīcēm ikreiz, kad tās tiek atjaunotas gaidāmo Android 12 atbrīvot. Faktiski viens OEM, ar kuru mēs runājām, ASUS, mums teica, ka viņi plāno iekļaut šo API savā Android 12 atjauninājumā. Mēs nezinām, vai Google ir paziņojis par šīm izmaiņām oriģinālo iekārtu ražotājiem, taču ceram, ka vairāk oriģinālo iekārtu ražotāju pamanīs šīs izmaiņas. un nolemj iekļaut API savās Launcher3 dakšās, lai uzlabotu trešās puses lietošanas pieredzi palaišanas ierīces.

Tomēr darbs ar to nebeigsies. Pat pēc šīs API iekļaušanas vēl ir jādara vēl vairāk, lai panāktu paritāti starp trešo pušu palaišanas ierīcēm un OEM palaišanas ierīcēm. Piemēram, dažas OEM ierīces mirgo, kad lietotājs pieskaras ekrānam, pirms tiek parādīta sākuma ekrāna animācija. Dažreiz atlasītās trešās puses palaišanas programmas vietā tiek parādīta sistēmas palaidēja lietotne (ar mani tā ir gadījies vairākas reizes). Uzlabota pārejas animācija ir jauka, taču neviens nevēlas tikt galā ar kļūdām ne palaidēja lietotnē, ne jaunāko lietotņu ekrānā, tāpēc žestu koda fotoattēli ir jātīra un/vai jāstandartizē.

Paldies Kevinam Barijam un Pīteram Hūberam par palīdzību šajā rakstā!