0 kör väl på Nexus S har inneburit att stänga hårdvaruaccelererad ritning i delar av användargränssnittet så att vi inte förlorar 8 MB RAM i system process, en annan 8MB i telefonen process, en annan 8MB i systemet UI processen, etc. Lita på mig, du kommer inte att märka - det är bara ingen fördel på den enheten använda OpenGL att rita något som statusfältet, även med tjusiga animationer som pågår där. • Hårdvara accelererade Ritningen är inte en magisk silverkula till smör smidig UI.
Det finns många olika insatser som har pågått mot detta, såsom förbättrad planering av förgrunds kontra bakgrunds trådar i 1.6, skriva inmatningssystemet i 2.3, strikt läge, samtidig sophämtning, lastare, etc. Om du vill uppnå 60fps har du 20 millisekunder för att hantera varje ram. Detta är inte en massa tid. Bara röra lagringsblixtsystem i tråden som kör UI kan i vissa fall införa en fördröjning som gör att du ur den tidsfönster, speciellt om du skriver till lagring.
• Ett färskt exempel på vilka typer av intressanta saker som påverkar UI jämnhet: Vi märkte att ICS på Nexus S var faktiskt mindre smidig när du bläddrar genom listor än den var på pepparkakor. Det visade sig att anledningen till detta berodde på små förändringar i timing, så att ibland i ICS som appen hämtar pekhändelser och rita på skärmen, skulle det gå att få nästa händelse något innan det var redo, vilket ledde till synligt missar en ram medan spåra fingret trots att det drog skärmen på en solid 60fps.
• När man har historiskt sett jämfört webbläsare bläddra mellan Android och iOS, de flesta av skillnaderna de ser inte beror på hårdvaruaccelererad ritning. Ursprungligen Android gick en annan väg för sin webbsida rendering och gjort olika kompromisser: webbsidan visade en visningslistan, som ständigt återges på skärmen, istället för att använda plattor. Detta har fördelen att bläddra och zooma aldrig har artefakter av plattor som ännu inte dragits. Dess nackdel är at