Android lag explained

Underlying framework to blame but improvements to come

Shares

With web designers keen to encourage people to embrace web apps, a regular source of frustration is the laggy nature of the browsing experience when using many Android devices. While iOS appears to prioritise the UI over other tasks, Android users often complain of stuttering scrolling as web pages load and render.

Google software engineer Dianne Hackborn provided some insight on Google+ about the issue, which was subsequently responded to by Android intern Andrew Munn. Hackborn appeared to state that different priorities of each system led to the perception of weaker performance from Android: "Originally Android went a different route for its web page rendering and made different compromises: the web page is turned in to a display list, which is continually rendered to the screen, instead of using tiles. This has the benefit that scrolling and zooming never have artifacts of tiles that haven't yet been drawn. Its downside is that as the graphics on the web page get more complicated to draw the frame rate goes down."

As of Android 3.0, the browser now uses tiles, but many Android users either can't or haven't updated their devices to see the improvements. Nonetheless, Munn suggested that inherent design constraints – "UI rendering occurs on the main thread of an app", "UI rendering has normal priority" – mean that the "Android UI will never be completely smooth", unless the rendering framework is rewritten, which would require apps to be rewritten to support it.

Despite Munn's concerns, developer Richard Leggett told us that many of the criticisms of Android are outdated, with people comparing an iPhone with an ageing Android device. "I'm using a Samsung Galaxy Nexus which has Android 4.0 and a top-spec dual-core CPU with a high-end graphics chip and a 720p screen – that's nearly one million pixels being pushed around. With Android 4.0, the UI within a window is now also hardware accelerated, the result is an incredibly smooth experience, I haven't felt any lag," he said. "It could simply be the case that the sheer power of this device is masking the underlying framework issue referred to by the posts."

In terms of the issue disappearing, Leggett is optimistic: "Google might already be looking at options to upgrade the render-framework whilst maintaining compatibility mode for older apps, Google is all about speed. With the rapid progression of faster chips, like the Tegra 3, and apps taking advantage of the hardware acceleration, I think we'll be increasingly hard pushed to notice any issues, framework improvements aside."