Neki ga vole nazvati fragmentacijom, drugi ga zovu izborom, ali pod bilo kojim imenom sigurno postoji puno različitih Android telefona. Izgradnja aplikacija koje trebaju raditi sa svima njima nije lak zadatak. Imate divno različite konfiguracije hardvera koje dovode do velike razlike u performansama, a iako jedna apk datoteka može raditi na svakoj od njih, i dalje postoji problem da se aplikacija treba nesmetano pokretati na niskobudžetnim uređajima bez žrtvovanja značajki na visokoj -end uređaje. Kada govorite o aplikaciji popularnoj kao što je Facebook, to brzo može postati noćna mora za ljude koji rade kodiranje.
Facebook je svima na Big Androidu Meso i pozdravio novo rješenje koje je jednostavno - komponenta Device Year Class.
Facebookovi programeri opisuju ovu novu softversku komponentu poput ove:
Device Year Class je Android biblioteka koja implementira jednostavan algoritam koji mapira RAM, jezgre CPU-a i brzinu takta uređaja u godinu u kojoj se kombinacija specifikacija smatralo krajnjim. To omogućuje programeru da lako mijenja ponašanje aplikacije na temelju mogućnosti hardvera telefona.
Biblioteka ne mijenja ponašanje u aplikaciji. Vraća vrijednost (izraženu u godini) koja se sprema u kod za vremena kada programer mora promijeniti način na koji aplikacija prilagođava iskustvo određenom tipu hardvera. To znači da dev može napisati aplikaciju s fantastičnim animacijama i prijelazima koji će se igrati onako kako je predviđeno kada se izvodi na nešto poput Galaxy Note 4, ali ne upotrebljava slatkiše za oči kada se aplikacija pokreće na nečemu poput Moto E. Kao što možete Zamislite, ova vrsta kontrole na aplikaciji poput Facebooka - koja je instalirana na milijune i milijune različitih telefona - može i želi učiniti boljim iskustvom za gotovo sve. A to je lako implementirati. Iz dokumentacije na GitHub-u:
if (year >= 2013) { // Do advanced animation } else if (year > 2010) { // Do simple animation } else { // Phone too slow, don't do any animations }
Najbolje od svega, knjižnica je otvorena pod licencom softvera BSD (ista licenca koju Google koristi za izvor Android) i dostupna je za sve programere da ih koristi besplatno.
Znamo da ovo nije magija i vjerojatno je da većina programera koji rade na velikim projektima ima neku vrstu metode za obradu različitih hardverskih konfiguracija. Godišnja klasa uređaja pruža jednostavno i „elegantno“ rješenje velikog problema, a svatko ga može koristiti.
Stranica uređaja godina klase 'GitHub