The Browser

The improvements to the Android web browser are some of the most noticeable in Ice Cream Sandwich. Browser performance both in JavaScript rendering and web page scrolling is worlds better than in Gingerbread. We've already explained why scrolling is smoother (full OpenGL ES render path), while the js performance improvements come courtesy of a newer V8 rendering engine in ICS.

The browser in 4.x also includes essentially everything that made the browser in 3.x smooth as well. As opposed to the Android 2.x browser's immediate rendering system - which would redraw the page in its entirety as you zoomed and panned around and seem choppy as a result - Android 3.x/4.x now render tiles into a backing store for webpages. This is the same system that iOS, webOS, and Samsung's custom browsers use, and as a result panning and translating around is now just as smooth as it is in those platforms. To be totally honest, this is probably one of the single largest and most welcome improvements over Android 2.x because of how dramatic the difference is.

 
 
Android 4.0 browser with visual indicator enabled (left), debug settings (right)

In Android 4.0 you can actually go inside the debug settings for the browser (enter about:debug into the address bar, enter, then a new settings pane emerges) and enable or disable OpenGL assisted rendering for the browser. With it off, it feels just like 2.x's choppy stock browser, and with it on, it feels buttery smooth like 3.x. The difference is beyond dramatic. This is actually a feature that was present in Android 3.x as well. 

A look at SunSpider and Browsermark performance tells us all we need to know about how the JavaScript V8 engine performance has changed under ICS:

SunSpider Javascript Benchmark 0.9.1 - Stock Browser

BrowserMark

While companies like Motorola and Samsung backported parts of the Honeycomb browser to their own Gingerbread browsers, the stock Gingerbread browser needed work. ICS modernizes the Android web browser and finally removes the need for third party customizations, at least from a performance standpoint.

Gingerbread vs. Ice Cream Sandwich
  Gingerbread Ice Cream Sandwich
Browser

The ICS browser is still WebKit based and uses a much newer version of WebKit than what you'll find in Android 2.3.6. Compared to the latest Honeycomb browser however there's not all that much difference in version number. The ICS browser does still use an older version of WebKit than Mobile Safari in iOS 5.0.1:

User Agent String Comparison
Device OS WebKit Version UA String
Apple iPhone 4S iOS 5.0.1 534.46 Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X) AppleWebKit/534.46 (KHTML, like Gecko) Version/5.1 Mobile/9A405 Safari/7534.48.3
Samsung Galaxy Nexus Android 4.0.2 534.30

Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

ASUS TF Prime Android 3.2.1 534.13

Mozilla/5.0 (Linux; U; Android 3.2.1; en-us; Transformer Prime TF201 Build HTK75) AppleWebKit/534.13 (KHTML, like Gecko) Version/4.0 Safari/534.13

Google Nexus One Android 2.3.6 533.1 Mozilla/5.0 (Linux; U; Android 2.3.6; en-us; Nexus One Build/GRK39F) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 Mobile Safari/533.1

HTML5 compatibility is fairly similar to Honeycomb, although a significant improvement compared to Gingerbread. If you haven't had any experience with Honeycomb tablets, the ICS browser will feel like like brand new technology.

The HTML5 Test
Test Apple iPhone 4S Samsung Galaxy Nexus Google Nexus One ASUS Eee Pad Transformer ASUS Eee Pad Transformer Prime
OS iOS 5.0.1 Android 4.0.2 Android 2.3.6 Android 3.2.1 Android 3.2.1
WebKit Version 534.46 534.30 533.1 534.13 534.13
Total Score 305 (and 9 bonus points) 256 (and 3 bonus points) 182 (and 1 bonus point) 222 (and 3 bonus points) 233 (and 3 bonus points)
Parsing rules 11 (2 bonus points) 11 (2 bonus points) 1/11 11 (2 bonus points) 11 (2 bonus points)
Canvas 20 20 20 20 20
Video 21/31 (4 bonus points) 21/31 21/31 21/31 21/31
Audio 20 (3 bonus points) 20 (1 bonus point) 20 (1 bonus point) 20 (1 bonus point) 20 (1 bonus point)
Elements 22/29 23/29 13/29 20/29 20/29
Forms 77/100 57/100 33/100 54/100 54/100
User Interaction 17/36 17/36 0/36

0/36

0/36
History and navigation 5 5 5 0/5 0/5
Microdata 0/15 0/15 0/15 0/15 0/15
Web applications 15/20 15/20 19/20 15/20 15/20
Security 5/10 5/10 5/10 5/10 5/10
Geolocation 15 15 15 15 15
WebGL 9/25 9/25 0/25 0/25 9/25
Communication 32/36 12/36 9/36 10/36 12/36
Files 0/20 10/20 0/20 10/20 10/20
Storage 15/20 15/20 15/20 15/20 15/20
Workers 15 0/15 0/15 0/15 0/15
Local multimedia 0/20 0/20 0/20 0/20 0/20
Notifications 0/10 0/10 0/10 0/10 0/10
Other 6/8 6/8 6/8 6/8 6/8

Performance and compatibility are obvious improvements, however there's much more to the ICS browser. For starters it implements tabbed browsing, a feature that has been available on Honeycomb but not in Gingerbread. Given the small screen size, tabs aren't immediately visible but are instead switched between after hitting the tabs button. The process makes sense and thanks to GPU accelerated drawing, scrolling through tabs is extremely smooth.

 
The normal desktop UA switcher (left), More options under developer settings (right)

Google added quick user agent switching to ask for desktop versions of websites vs. mobile by default through a checkbox under settings. Enabling the option changes the browser's UA string from representing itself as a mobile Safari browser to Chrome 11. There's also a menu inside debug settings to change your user agent (UAString) to look like the desktop, iPhone, iPad, Nexus One with Froyo, or a Xoom with Honeycomb. 

User Agent String Comparison
Device UA String
Default

Mozilla/5.0 (Linux; U; Android 4.0.2; en-us; Galaxy Nexus Build/ICL53F) AppleWebKit/534.30 (KHTML, like Gecko) Version/4.0 Mobile Safari/534.30

Desktop

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit 534.24 (KHTML, like Gecko) Chrome/11.0.696.34 Safari/534.24

Prior to ICS, the browser was a serious limitation of the Android platform on smartphones - it was choppy, and something OEMs continually replaced with their own (sometimes worse, sometimes better) browser. Granted you could always download and replace the browser with one of your own choosing, but for the mainstream user the Gingerbread browser was a problem. In ICS the browser is a blessing to use. It's very fast, smooth and compatible. We've had no problems using the Honeycomb browser and the same can be thankfully said about the evolution of it in ICS.

The Keyboard & Facial Recognition Email & Gmail
Comments Locked

185 Comments

View All Comments

  • Brian Klug - Thursday, January 19, 2012 - link

    Interesting. I originally picked S5K4E5 family as being the likely choice - as it's the BSI equivalent, and though that was what was inside until I decompiled/dug around inside the ducati-m3.bin file as noted in the review.

    You'll see numerous references to "S5K4E1G" and none for "S5K4E5" which is the BSI version. EG:

    "CSI.COMPLEIO¿F¿MSP.NEW_SENSOR¿S5K4E1GA¿F¿S5K6A1GX03¿MSP.NEW_LENS¿F¿VM149C¿MSP.NEW_CSICSI2A¿FCSI2B"

    It could very well be BSI since they've x-rayed it.

    -Brian
  • tom5 - Thursday, January 19, 2012 - link

    Official Samsung site says SGS II has quad band 3G and Galaxy Nexus has penta-band 3G, so there's a difference in GSM connectivity:
    http://goo.gl/gvIWV
  • Stas - Thursday, January 19, 2012 - link

    I appreciate the thoroughness in this review, Anand.
    Interesting, however, how I find so many things about the software completely irrelevant to someone who just can't leave things vanilla. Browser performance and features, launcher scrolling, screenshots, on-screen keyboard, etc. None of those things are in their original Android form on my phone (SGS2). Some issues have been addressed by Samsung, some by XDA developers, some by myself. As a result, I believe I have the perfect phone on the market (for me). Reading every section of this article, I kept finding myself thinking, "Heh, my phone doesn't have that problem," or, "Mine does that even better," or, "would suck to have that phone instead of my Galaxy."
    I always thought advancement in tech = replacing devices sooner. However, after reading this review, I have no desire whatsoever to replace my current phone with the new flagship. I always get that feeling when I read a video card review, CPU review, SSD review, etc. But I feel like my phone lacks nothing, and I will stick with it for a long while. Customizing and tweaking software to your own taste, making it feel just right is the most important aspect of an electronic device that provides so much interaction. I guess that's why I almost feel handicapped on a stock Android phone or, especially, iPhone. The devices just feel so clunky and unrefined.
    Thank you, if nothing else, for helping me see a different perspective on things :)
  • Lucian Armasu - Thursday, January 19, 2012 - link

    1. Can you re-check and confirm if swiping tabs off in the task menu, actually KILLS the apps, or it just takes them off the list? Because I've heard before that it doesn't kill them.

    2. The battery tests, especially the Wi-Fi ones, were they done with 3G and LTE on?
  • silow675 - Thursday, January 19, 2012 - link

    "At 720p, which happens to be the GN's native resolution, the OMAP 4460 is a bit faster than Tegra 2 but not significantly so. The more important thing to keep in mind is just how much faster Tegra 3's GPU is by comparison"

    I don't understand this remark. The chart that's posted for the 720p offscreen renders don't have a Tegra 2 device. In the RightWare charts the Galaxy Nexus scores much more than "a bit faster" than the Tegra 2 devices. And to my knowledge no Tegra 2 smartphones are offered at native 720p resolution.

    I also checked the AT Bench database and couldn't find any Tegra 2 benchmarks to compare. Do you guys have some unposted numbers?
  • RobElk - Thursday, January 19, 2012 - link

    You guys do a great job. Love the attention to detail in your review. Thanks.
  • DrKlahn - Thursday, January 19, 2012 - link

    I found this comment interesting. I have had the phone since launch day (VZW) and have yet to notice any lag hitting the virtual buttons. Perhaps I am just not as sensitive to it or some other process on your test phone is affecting it. I have got the phone to lag doing some very intensive tasks on occasion, but it's very infrequent. My chief complaint has been the volume which I remedied with a free app (Volume+ with the +2 setting). Otherwise I give the phone very high marks. I have no real desire to root or tinker with it yet, the stock experience is excellent.
  • peokuk - Thursday, January 19, 2012 - link

    for the font comparison, why not 'the quick brown fox jumps over the lazy dog'? using cat and jumped leaves out the letters 'g' and 's'...
    http://en.wikipedia.org/wiki/The_quick_brown_fox_j...
  • DanSmith - Thursday, January 19, 2012 - link

    No one has actually said it yet so I will. Good review guys, in depth and informative as always.
    Thanks for your hard work.

    Dan
  • DanSmith - Thursday, January 19, 2012 - link

    Actually, someone already has! Seems the internet is not completely populated by haters. :)

Log in

Don't have an account? Sign up now