Quote (Elfisher @ 21 Aug 2016 13:07)
mylisz sie, problem lezy po stronie google bo nie udostepnia producentom kodu zrodlowego. sterowniki do podzespolow niewiele maja z tym wspolnego. popatrz na windowsa, dziala dobrze na kazdym procesorze, plycie glownej, dysku czy karcie graficznej. producenci nie maja mozliwosci zoptymalizowania swoich nakladek, dlatego nexusy dzialaja duzo lepiej niz "zwykle" smartfony z androidem. kolejny problem polega na tym, ze producenci nie moga swojej nakladki schowac do sklepu z aplikacjami i aktualizowac na biezaco launchera, aplikacji systemowych, sterownikow itd.
No walsnie tez nie do konca. Bo android napisany jest w Javie, glowna role tutaj tez odgrywa Garbage Collector, ktory w androidzie chodzi praktycznie caly czas. W iOS jest on praktycznie wylaczony, dlatego iOS dzialaja duzo szybciej.
Oczywiscie jest tez kwestia optymalizacji tak jak piszesz, ale Nexusy wcale nie sa szybsze od pozostalych telefonow. HTC 10, czy S7 dzialaja lepiej od Nexusa 6P. Nexusy maja ta przewage, ze maja czystego anroida, bez nakladek ala TouchWiz i innych, ktore po prostu spowalniaja system, zamiast go przyspieszych - tutaj dobrym przykladem jest HTC 10, ktory ma praktycznie czystego androida i dziala naprawde szybko.
Imo Android ma szanse byc lepszy od iOSa pod wzgledem szybkosci, ale jeszcze nie teraz. Aktualny Android N ( o ile testowales i widzailes ) naprawde ma duzy skok wydajnosciowy z 6.0. Zobaczymy jak to ebdzie wygladac jak juz telefony go zaczna dostawac.
Przypomnialo mi sie tez, ze iOS ma duza lepsza wizualizacje otwierania aplikacji. To ze, apka sie pokazuje, nie oznacza, ze jest ona od razu tak szybko otworzona. iOS pierwsze co robi, to pokazuje zdjecie apki, a nie sama apke, a w tle dopiero uruchamiana jest dana aplikacja. Gdzies kiedys na reddicie o tym czytalem, ze Apple ma taki zabieg, zeby wszystko wydawalo sie duzo abrdziej plynne

Co prawda udaje im sie to i apki otwieraja sie czasami szybciej niz na Androidzie, ale takie zabiegi to na plus dla iOS.
No i najwazniejsze jest UI rendering. Zupelnie inaczej odbywa sie to w iOS a zupelnie inaczej w Androidzie. iOS ma to real time w dedytkowanym threadzie do renderingu UI z najwyzszym priorytetem, w Androidach jest to glowny thread ( main() ), z normalnym priorytetem - pewnie z czasem sie to zmieni - czyli jednym sloweim programisci iOSa lepiej zrobili multi-threading niz programisci Google'a

ale moim zdaniem, wkrotce sie to zmieni.