Logo sk.androidermagazine.com
Logo sk.androidermagazine.com

Jednoduchý trik Facebooku pre obsluhu toľkých rôznych zariadení s Androidom

Anonim

Niektorí ľudia to radi nazývajú fragmentáciou, iní to volia, ale podľa mena existuje určite veľa rôznych telefónov s Androidom. Vytváranie aplikácií, ktoré musia so všetkými pracovať, nie je ľahká úloha. Máte nesmierne odlišné hardvérové ​​konfigurácie, ktoré spôsobujú veľký rozdiel vo výkone, a hoci na každom z nich môže fungovať jeden súbor apk, stále existuje problém, keď je potrebné, aby aplikácia fungovala bez problémov na zariadeniach nižšej kategórie bez obetovania funkcií na vysokej úrovni. - zaslať zariadenia. Keď hovoríte o aplikácii tak populárnej ako Facebook, môže sa to rýchlo stať nočnou morou pre ľudí, ktorí kódovanie robia.

Facebook ukázal všetkým na veľkom mäse Android a pozdravom nové jednoduché riešenie - komponent Rok zariadenia.

Vývojári Facebooku opisujú tento nový softvérový komponent takto:

Device Year Class je knižnica systému Android, ktorá implementuje jednoduchý algoritmus, ktorý mapuje pamäte RAM, jadrá CPU a rýchlosť hodín do roku, keď sa tieto kombinácie špecifikácií považovali za špičkové. To umožňuje vývojárovi ľahko modifikovať správanie aplikácií na základe schopností hardvéru telefónu.

Knižnica nemení žiadne správanie v aplikácii. Vracia hodnotu (vyjadrenú ako rok), ktorá je uložená v kóde, v čase, keď vývojár potrebuje zmeniť spôsob práce aplikácie, aby prispôsobil prostredie konkrétnemu typu hardvéru. To znamená, že dev môže napísať aplikáciu s efektnými animáciami a prechodmi, ktoré sa budú prehrávať tak, ako sa plánovalo, keď beží na niečom ako Galaxy Note 4, ale nepoužívajú bonbóny, keď je aplikácia spustená na niečo ako Moto E. Ako môžete Predstavte si, že tento druh ovládania aplikácie, ako je Facebook - ktorá je nainštalovaná na miliónoch a miliónoch rôznych telefónov - môže a bude prínosom pre takmer všetkých. A je ľahko implementovateľná. Z dokumentácie na GitHub:

if (year >= 2013) { // Do advanced animation } else if (year > 2010) { // Do simple animation } else { // Phone too slow, don't do any animations }

Najlepšie zo všetkého je, že knižnica je otvorená z licencií na softvér BSD (rovnaká licencia, ktorú používa spoločnosť Google pre zdroj Android) a je k dispozícii každému vývojárovi, ktorý môže používať bezplatne.

Vieme, že to nie je kúzlo, a je pravdepodobné, že väčšina vývojárov pracujúcich na veľkých projektoch má nejaký spôsob zvládania rôznych hardvérových konfigurácií. Rok, ktorý zariadenie robí, predstavuje jednoduché a „elegantné“ riešenie veľkého problému a každý ho môže použiť.

Stránka Rok GitHub triedy zariadenia