Šiame straipsnyje nagrinėjame skirtumus tarp būsimo rovo89 Xposed for Nougat ir dabartinio diegimo, kuris yra prieinamas Nougat.
„Xposed“ sistema buvo – ir tebėra – pagrindinis būdas tinkinti „Android“ įrenginį, suderinamą su beveik visais įrenginiais, leidžiančius lengvai įdiegti modulius, kad galėtumėte pakoreguoti praktiškai bet kokią detalę.
Norite naudotis visomis pasirinktinio ROM siūlomomis funkcijomis, nereikalaujant jos išjungti?GravityBox arbaXTouchwiz tai padarys. Norite pakoreguoti tam tikrus nustatymus kiekvienai programai, pvz., pakeisti konkrečios programos DPI?Programos nustatymai ar jūs apėmėte. Linkiu, kad programos kūrėjai sumanytų pridėti konkrečią funkciją, pvz., „Google“ leidžia jumssuasmeninti „Hangout“. arba „Facebook“ leidžia jums tai padarytiatsisiųskite jums patinkančius „Instagram“ įrašus? Na, jums to nereikia, nes „Xposed“ suteikia kūrėjams teisę keisti beveik viską, ką jie daro ar tai būtų visos sistemos funkcija, kuriai reikės pasirinktinio ROM, ar konkretaus pakeitimo taikymas.
„Xposed“ sistema turi didelį pranašumą kūrėjams, tai yra kūrimo paprastumas (palyginti su AOSP kompiliavimu ROM pataisymams arba „Smali“ kodo redagavimui). Tai taip pat suteikia didžiulį pranašumą vartotojams: patogumas, nes jie nebeverčia rasti ir atnaujinti ROM, kuriame yra kiekviena ieškoma funkcija (Vietoj to jie gali maišyti ir suderinti nepriklausomus modulius), papildydami savo tikslinį stabilumo ir stabilumo balansą spektaklis. Taip pat daro koregavimo programas daug lengviau, nes nereikia dirbti su skirtingais parašais, dėl kurių naudotojai turėtų pašalinti originalą versija arba pereiti per tam tikrus lankus, kai programa patikrina savo parašą (kažkas pakeistas „YouTube“ klientai, pvz. instancija).
Vienintelė problema? Dėl savo pobūdžio ir laisvo laiko „Xposed“ kūrėjas (mūsų vyresnysis pripažintas kūrėjas,rovo89), ji dažnai atsilieka nuo „Android“ leidimų.Prireikė maždaug keturių mėnesių, kol buvo atnaujinta ir palaikoma „Lollipop“., o atvykti į Nugą užtrunka maždaug metus. Tai nėra taip blogai, kaip gali atrodyti, jei pagalvoji kiek „Android“ naudotojų iš tikrųjų naudoja „Nuga“. (apie 13,5 proc., nors atminkite, kad „Android“ entuziastai, „Xposed“ tikslinė auditorija, taip pat dažniau naudojasi „Nuga“). Tačiau vis tiek gali būti gana nemalonu, jei negalite naudoti mėgstamų Xposed modulių ir tuo pačiu metu turėti naujausią ir geriausią „Android“ versiją.
Kai yra Xposed sistemos šaltinio kodas (bent jau stabilioms, išleistoms versijoms), kūrėjasabforce nusprendė susitepti rankas ir pažiūrėti, ar jis galėtų perkelti kai kurias rovo89 modifikacijas į Nougat. Pasirinkęs kitokį ir paprastesnį požiūrį, „abforce“ iš esmės pritaikė tą „Xposed“ dalį, kuri iš tikrųjų yra įdiegia magiją ir leido ją įtraukti kuriant savo ROM (po to, atsirado kitų sprendimų). Šis požiūris, be abejo, labai skiriasi nes neatsižvelgiama į vieną iš pagrindinių Xposed pranašumų, kuris yra lengvai prieinamas visiems. Tačiau bet kokia pažanga yra sveikintina, o keli vadovai, sprendžiantys užduotį, gali būti naudingi ir pasiūlyti naujų įžvalgų. Pagrindinė problema, kaip mes matome, yra klaidinga informacija apie šį vystymą (paskleista kai kurių kitų „kūrėjų“ ir kai kurių tinklaraščių), taip pat kai kurios bendruomenės reakcijos. Tikimės, kad šis straipsnis padarys visą vaizdą aiškesnį.
Visų pirma, norėdami suprasti darbą, kuris buvo atliktas ir vis dar vyksta prie oficialios Xposed sistemos ir abforce versijos, turime pažvelgti į tai, kaip sistema veikia. Nors pati sistema yra tik dalis projekto, paprastai turime omenyje ir karkasą, ir montuotoją nes karkasas praranda daug savo privalumų be universalaus montuotojo, į kurį taip pat reikia įdėti daug darbo.
„Xposed“ galia kyla iš paprastos koncepcijos: bet kurį metodą galima „užkabinti“ (metodai yra maži dalys, kurios sudaro bet kurią programą), kad Xposed modulio kodas būtų vykdomas prieš, po ar vietoj tai. Paimkime paprastą pavyzdį: tarkime, kad „Instagram“ naudoja metodą, vadinamą „showMenuOptions“, kai spustelite meniu mygtuką, ir šis metodas parodo mygtukų „Pranešti“ ir „Bendrinti“ rodymą. Sukurdami Xposed modulį, galite modifikuoti šį metodą ir pridėti papildomą mygtuką, kad atsisiųstumėte vaizdą, o ne, pavyzdžiui, bendrintumėte jį. Modifikacijos gali skirtis nuo paprastų pakeitimų (pvz., „Play“ parduotuvės pakeitimų žurnalas) iki kapitalinio remonto (pvz GravityBox, kuriuo siekiama suteikti visas funkcijas, kurias turėtų pasirinktinis ROM)!
Dėl to „Xposed“ yra galingas, tačiau tai tik dalis lygties. Kitos dalys yra universalumas – arba iš tikrųjų galimybė naudoti „Xposed“ beveik bet kuriame įrenginyje (su palaikoma „Android“ versija) ir naudojimo paprastumas. Viskas, ką vartotojai turi padaryti, tai patraukti diegimo programą, kuri atlieka savo magiją ir dinamiškai pataiso jų sistemą, kad integruotų Xposed. Norėdami pritaikyti modulį, tereikia jį įdiegti, įjungti ir paleisti iš naujo. Nereikia nerimauti, nereikia įjungti pasirinktinės ROM (ypač kai pasirinktiniai ROM ne visada yra tinkamas pasirinkimas), nereikia pašalinti APK, kad būtų galima įdiegti kitą, pasirašytą kitu parašu. Viskas, ko jums reikia, yra root (visiškai galite turėti pasirinktinį ROM ir tai yra prasminga daug laiko; bet nors Xposed gali suteikti daugumą funkcijų, kurias gali suteikti pasirinktinis ROM, jis taip pat neapsiriboja).
Tačiau už šio paprastumo slypi daug darbo:
- Modulio kūrėjams pateikta API turi būti stabili ir garantuotai veiks. „Xposed“ sistema negali atsitiktinai sugesti naudojant tam tikrus ROM ir (arba) „hook“ derinius (išskyrus išimtinius atvejus). Kitaip tariant, jei vartotojas turi problemų, ta problema turėtų būti dėl vartotojo kaltės (ne ką nors tinkamai įdiegus/įgalinant) arba modulio kūrėjo kaltę (dėl klaidų modulis). Tačiau turėtų būti beveik tikras, kad pati sistema veikia taip, kaip numatyta, ir tai nėra klaidų, dėl kurių vartotojai būtų nusivylę, o kūrėjai supainiotų, šaltinis.
- Vartotojams sistemą turi būti lengva įdiegti įrenginyje ir ROM, nesvarbu, ar jie turi „Samsung“, kuriame veikia naujausia „TouchWiz“ versija, ar „Nexus“ su įdiegta „LineageOS“. „Xposed“ montuotojas tvarko viską užkulisiuose. Norint išbandyti diegimo programą ir sistemą įvairiuose įrenginiuose ir ROM deriniuose, reikia įdėti daug darbo. Klaidų randama, dažnai dėl skirtingų OĮG įdiegimų, ir jas reikia ištaisyti, kad būtų užtikrintas visų naudotojų patikimumas.
- Didelės „Android“ versijos kartais gali sukelti didelių pokyčių, todėl reikia permąstyti sistemos architektūros dalis, kad jos prisitaikytų prie tų pakeitimų. Kartais naujesnėms versijoms atsiranda papildomų galimybių, todėl norint turėti geresnį produktą, reikia šiek tiek papildomo laiko. Kai pirmą kartą buvo pristatytas ART, pavyzdžiui, kai Xposed išjungė tam tikrus optimizavimus, kad užkabinimas veiktų tinkamai. Nugos atveju,Just-in-time (JIT) kompiliatorius suteikia galimybęišlaikyti šiuos optimizavimus.
Daugelyje pirmiau minėtų darbų atsižvelgiama į smulkias detales, kai dauguma sistemos veikia taip, kaip numatyta, bet dėl neatitikimų ir nedidelių problemų naudotojams tai taptų azartas, o modulio palaikymo ir kūrimo košmaras kūrėjai. Tačiau išleistas produktas turi būti naudojamas visiems ir be staigmenų. Žinoma, yra keletas išimčių, nes kai kuriems originalios įrangos gamintojų pakeitimams prisitaikyti reikia daugiau pastangų, tačiau tie yra nedideli, o didžioji dauguma vartotojų (ir kūrėjų) gali mėgautis stabiliu ir patikimu Xposed patirtį. Visos pasitaikančios išimtys dokumentuojamosaiškūs atsisakymai kad niekas nenustebtų.
Atsižvelgiant į tai, kas išdėstyta pirmiau, rovo89 vizija, skirta Xposed, yra stabilus sprendimas, užtikrinantis patikimą ir lengvai naudojamą sutartį vartotojams ir kūrėjams. Jo filosofija, nors galite su ja nesutikti, paprasta ir suprantama: produktas turi būti išleidžiamas, kai jis yra paruoštas naudoti pagal paskirtį, nes prieš tai išleidus sukelia daugiau problemų nei naudos.
abforce Xposed ART submodulis, skirtas Nougat
Nenorime abforce darbų vadinti „uostu“ arba „neoficialiu Xposed“, nes tai netikslu ir klaidinanti. Kaip matėme, „Xposed“ turi du pagrindinius komponentus:
- Pačios „Xposed“ sistemos branduolys, valdantis užkabinimo metodų magiją.
- „Xposed“ diegimo programa, kuri užtikrina, kad sistemą būtų lengva teisingai įdiegti visuose įrenginiuose.
„Abforce“ perkėlė rovo89 „Marshmallow“ kodą pirmoje dalyje (tik „Xposed“ sistemai) į „Nugat“ tokiu būdu, kad, sudarant pasirinktinį ROM, reikia atlikti pakeitimus. Be to, daugelis nedidelių (bet svarbių) sistemos dalių nėra visiškai pritaikytos Nugai. Taigi elgesys gali būti nenuoseklus ir, nors jis dažniausiai veikia (tačiau nedėlVisi), tai nėra patikima. Modulio kūrėjams ir vartotojams pasikliauti neužbaigtu ir nenuosekliu diegimu būtų tiesiog teikti blogą patirtį visoms susijusioms šalims, su kai kurie moduliai visai neveikia arba dėl to įrenginys neįsikrauna. Nors daugeliui vartotojų gali būti gerai kažkas, o ne nieko, kūrėjų požiūris vis dar puikiai suprantamas (ypač jei turi omenyje, kad atsisakymai nesustabdo fiktyvių palaikymo klausimų ir verkšlenimo).
(Be pirmiau minėtų dviejų pagrindinių punktų, mes taip pat tikimės tolesnių galutinio, oficialaus „Xposed“ sistemos pakeitimų, kad pasinaudotume „Nougat“ pakeitimais.)
Reikėtų pažymėti, kad abforas atliko puikų darbą, kai dauguma buvo patenkinti tiesiog kalbėjimu, tačiau jo darbas toli gražu nėra pilnas Xposed patirties ir joks kūrėjas ar tinklaraštis neteigia kitaip (ir tikrai ne abforce; vėlgi, mes turime tik pagarbą visiems tikriems kūrėjams, kurie įdeda tikrą darbą ir pastangas). Tiesą sakant, kaip šiek tiek paliesime, kai kurie bendruomenės atsakymai (nesvarbu, ar tai vartotojai, ar „kūrėjai“) yra vienintelė šiurkšti šios pokyčių grandinės dalis.
Nutraukime gaudymą ir eikime tiesiai prie reikalo: bet kuri bendruomenė turi blogų elementų ir aspektų. Esant tokiai didelei bendruomenei kaip „Android“ entuziastai, blogi elementai gali atrodyti kaip didžiulė dalis, kai jie yra tik maža dalis (didelė, bet santykinai nedidelė). Tačiau nepadengus jo, daugelis bendruomenės atsako į „Xposed for Nougat“ kūrimą buvo labai vaikiški, neapgalvoti ar neatsakingi.
Pirmoji didelė problema buvo daugelio demonstruojamas nuolaidus požiūris į „Xposed mirtį“, nes užtrunka per ilgai, kol ji bus išleista „Nuga“. Tai nepaisant rovo89 atnaujinimusirgarantijų, ir nepaisant beveik tikslaus scenarijaus, nutikusio su Lollipop, kai buvo pristatyta pradinė ART versija. Gerai nustoti naudoti „Xposed“, tačiau negalima įžeisti kieno nors galimybių ir neužpulti kitų dėl kitokios filosofijos arba neužtikrinant, kad jūsų poreikiai būtų patenkinti nedelsiant. Tai dar labiau pasakytina apie visiškai nemokamą projektą, kuriame kūrėjas išsakė savo kūrimo metodiką ir priežastis.
Kita problema, susijusi su bendruomenės atsakymu, buvo klaidingas abforto darbo pobūdžio supratimas, nes daugelis jį vadina naujuoju Xposed arba reklamuoja kaip Nougat prievadą. Pagrindinė problema kilo dėl to, kad „kūrėjai“ skubėjo siūlyti „flashable“ versijas, nesuvokdami (ar nesirūpindami) trūkumų, nes nebuvo atsisakyta kai kuriose gijose iš viso siūloma, kai kurios netgi siekia kredituoti abforce, o ne rovo89 (kuris yra už didžiąją dalį Xposed darbų) ir kt. bendradarbių.
Galiausiai manome, kad turėtume vėl iškelti rovo89 kūrimo filosofiją. Daugelis balsingų vartotojų teigia, kad būtų naudinga turėti atvirojo kodo naujausius pakeitimus. Nors teoriškai tai skamba gerai, taip yrapraktiškai nėra taip paprasta ypač jei atsižvelgsime į rovo89 paaiškinimą:
[...] Manau, kad vien dabartinės būklės išstūmimas projektui nepadėtų. Galbūt pamatytume, kad žmonės, surašantys kodą, išleis „kai kuriuos“ labai greitai, pamatysime, kad taip yra veikia gerai ir paskelbia tai kaip „savo prievadą“, nepaisant problemų ir dalykų, kurių jie nežinotų apie. Vadink mane savanaudžiu, bet nenorėčiau matyti tokio pusbaigto paleidimo.[Šaltinis]
Tai iš tikrųjų pasirodė esanti gana gera esamos situacijos prognozė, kai kreipėsi keli „kūrėjai“. abforce pakeitimus ir siūlome „flashable ZIP“ su minimaliais įspėjimais arba be jų, nepilnais kreditais ir tuo pačiu aukos.
Tikimės, kad šie paaiškinimai išsklaidė kai kurias jūsų abejones ir pašalino galimas klaidingas nuomones. Xposed buvo nuostabus projektas, pasiekęs didžiulę mūsų entuziastų ir flashaholic bendruomenės dalį, o Xposed for Nougat turėtų būti dar vienas milžiniškas, kupinas galimybių etapas. Su moduliais, tokiais kaip GravityBox jau siūlo „Nougat“ palaikymą, o baigtas „rovo89“ projektas grįš prie daugybės galimybių.
Ar džiaugiatės Xposed savo Nougat ROM? Praneškite mums komentaruose!