Mobile browsers list and test advice

I have made a list of the fifteen mobile browsers I currently test. This will give you some insight in the current mobile browser market, which is volatile, complicated, and sometimes shrouded in mystery.

One of the commonest questions I get is “Which mobile browsers should I test?” The hidden question here is which devices you should own. It’s time to attempt an answer.

A mobile testing environment

Personally I’ve been pretty lucky in the past year. Not only does Vodafone have an enormous amount of mobile devices, it also has some people who know their way around them. If I ask for a non-HTC Windows Mobile device with a trackball, somebody usually knows which device I should try, and why it’s not very good.

Not everybody will be in the same position. So without more ado, here’s my advice.

iPhone and Android

I assume you have either an iPhone or an Android phone. Test your sites on it. (You probably already do so.) This’ll give you an idea of what the most powerful and capable mobile browsers of the moment can do. If it isn’t supported by Safari or Android, forget about it.

If you don’t have an iPhone or Android, get access to one. I can’t imagine a web developer in the Western world who does not know at least one person who owns such a phone and is willing to (occasionally) test stuff with it.

Safari iPhone and Android WebKit aren’t exactly the same browser, but at least they’re in a league of their own, and especially when you test medium-complex CSS or JavaScript, chances are that both support it equally well. Obviously, this rule excludes minor bugs.

BlackBerry or Nokia

The next step is to get some budget and buy either a BlackBerry (US) or a Nokia Symbian (Europe). They are the most common smartphones, and you should test your sites in them.

Pick a medium-new model. The very newest are more expensive and less widely used. The older ones are probably quite cheap, but their prevalence in the wild is going down. Find a golden mean here.

Even if you’re in Europe, if you’re doing a lot of work on sites targeted at the youth, forget about Nokia and buy a BlackBerry. It’s the most popular phone among young people (say 16-22) these days.

Business market

If you focus on business-related sites that have executives and managers as their target audience, forget iPhone and Android and test on both BlackBerry and Nokia, with Windows Mobile as third choice.

The point here is that a business phone requires all kinds of connections with the secure network of the company. In general IT departments are chary of novelty, and they tend to concentrate on Symbian, BlackBerry and Windows. Large companies rarely if ever give out other types of phones to their employees.

If your business sites are targeted at the US you can forget about Symbian.

Optional: Windows Mobile

I assume that your budget is spent by now. If it isn’t, you might consider buying either an iPhone or Android (whichever you don’t have access to), or a Windows Mobile phone.

The point of buying Windows Mobile is not the platform itself, which is rapidly becoming marginal, but installing lots of browsers on it and making it your secondary test platform. Symbian (Nokia) is a good choice for that, too, but Windows Mobile has even more browsers.

For God’s sake buy a 6.5 device. Do not I repeat DO NOT buy 6.1. You really don’t want to know.

I recommend HTC for both Android and Windows Mobile. These guys know what they’re doing. (A Nexus will work fine for Android, too, obviously.)

Opera

Install Opera Mobile and Mini on your devices. Mini is available for Android, Symbian, Windows Mobile, and BlackBerry, so it should pose no problems. Mobile is available only for Symbian and Windows Mobile, so you have a problem here when you only have a BlackBerry.

Opera Mini is especially important since it also runs on feature phones, and there are roughly five times more feature phones than smartphones. If your site works on Opera Mini you’ve increased your reach considerably.

Other browsers

Go through my list and install as many browsers as you can on the devices you already have. The more, the better.

Emulators

Still, I assume you now have two or at most three test devices, which means you won’t be able to test all browsers natively. The time has come to look into emulators.

A good solution is PerfectoMobile. This service gives you access to real phones with a webcam pointed at them and a web interface that allows you to operate them. The point here is that they use real phones which will show real-world problems and bugs.

Most mobile browser vendors by now offer some kind of emulator which you can install locally on your PC or Mac. Personally I don’t trust them, because in order to make a perfect emulator you have to take your mobile browser and port it to Windows or Mac (or Linux, I suppose). That’s not as easy as it sounds, and in the past I’ve seen a few emulators that use whichever desktop browser is available on your computer.

Since I do not trust emulators I do not recommend their use. That said, if you insist on using them anyway I will determinedly look the other way. A mediocre solution is better than no solution at all.

Note that I do not test emulators, nor can I answer questions about them. I exclusively focus on real devices.

This is the blog of Peter-Paul Koch, mobile platform strategist, consultant, and trainer. You can also follow him on Twitter.
Atom RSS

I’m speaking at the following conferences:

(Data from Lanyrd)

Categories:

Monthlies:

Comments

Comments are closed.

1 Posted by Anders Ytterström on 8 April 2010 | Permalink

I guess it is not of concern since it is not mentioned, but what about SonyEricsson with Symbian/UiQ? Like SE P1i or SE G900?

I ask because here in Sweden a fair share is using SE, especially teenagers.

2 Posted by ppk on 8 April 2010 | Permalink

UIQ is usually Opera 8.65. If it's important to you, buy a phone and test it. But I expect UIQ to slowly fold and be removed from the market.

3 Posted by Brian LePore on 8 April 2010 | Permalink

First off I must say thank you very much for this article. I cannot express how helpful this is.

Second, I am curious what you would recommend when you find issues with a site that are not CSS or JavaScript related. I've found that my companies site displays as intended on my Android, yet my 3rd gen iPod touch (which to my knowledge renders the same as an iPhone) has issues displaying some of the PNG files on the home page.

Third, as someone that bought your book on JavaScript. I was wondering how you would recommend updating the script for Dropdown Menus to work best in phones. My experience has shown it works in my Droid and iPod touch, but does not work in Opera Mini 5. I assume the same is true for other phones.

4 Posted by ppk on 8 April 2010 | Permalink

Dunno about the png problem. What's the resolution of the image? All images have to be unpacked in the browser and converted to bitmaps, so very large ones might give problems.

As to dropdowns, that, too, is something that's on my list. It's an interesting test case. Opera Mini doesn't support client-side JavaScript, it has to go back to the server, so I'd expect the experience to be severely sub-optimal.

5 Posted by Niels Leenheer on 8 April 2010 | Permalink

Actually, most emulators that come with the official development SDKs aren't that bad. Unlike MobiOne for example, they aren't just a desktop rendering engine inside a pretty picture of a phone, but the actual operating system of the phone inside a virtual machine. The same code that runs on your phone also runs inside the virtual machine.

Granted, nothing beats a real phone, but for those that can't afford to buy every type of phone it is a good alternative.

The iPhone SDK includes an iPhone and iPad simulator that allows you to load up every single version of the OS since version 2.0. The Android SDK also allows you to test on multiple OS versions and sizes. I've also found that the Windows Phone 7 and WebOS emulators work pretty well, but are a bit more limited regarding versions.

6 Posted by Dan Silivestru on 8 April 2010 | Permalink

I agree with you that there is no good substitute to testing on physical devices. As mobile developers focusing on the mobile web and mobile widgets we've run into problems that go beyond UI testing.

With widget platforms such as JIL, not all devices have the same level of support or implement the API in the same manner. Add to that the need to build a widget that will also work on Opera, etc. and the problem is further compounded.

I know that you don't normally work with emulators, but I would appreciate your feedback none the less.

We've developed an emulation tool, specifically tailored to mobile widgets to help us out in our mobile widget development efforts. Allowing us to do JS debugging, DOM inspection, see what's being stored on the phone, as well as update the values returned by the emulator to the widgets (i.e. geo location, firing events, etc.). We still test on physical devices, but at least by the time we get to that phase of our testing, we know our widget will actually run :-)

We've gotten some really positive feedback and we've decided to make it available to other developers as well. Launching our Beta on April 27th.

Please let me know if I should contact you personally with more info, we'd love your feedback

7 Posted by chenze on 8 April 2010 | Permalink

If you target at China, UCWeb is the first browser you should test. UCWeb is the most popular mobile browser in China.

Last month, UCWeb was submitted to app store. and the iphone version of UCWeb is used the UIWebview to render the page.

On most other platforms, UCWeb uses its own render engine.

8 Posted by ppk on 8 April 2010 | Permalink

@chenze: I've tried, and failed, to get UCWeb working on Symbian. I'm aware of its importance in China. Guess I'll have to try again.

@niels: There are decent emulators, but my problem is that if I say "use an emulator" that ought to mean that I've tested the emulator against the actual device and found that it works well. I do not plan such tests, therefore I can't officially endorse any emulator.
But, as you say, using them is not necessarily a huge problem.

9 Posted by Eric Anderson on 8 April 2010 | Permalink

I noticed in the top-tier phones you neglected WebOS (Palm Pre). It also uses WebKit so should perform similarly.

Also Palm's SDK runs the exact same operating system that runs on the phone on top of VirtualBox. This means the emulation is really quite good. There are only a few differences mostly not browser related so if you don't want to buy the hardware the SDK should be quite adequate for testing WebOS compatibility.

It could also suffice for Safari/Android compatibility in a pinch (since they use similar engines).

The fact that it runs on VirtualBox means you can do you testing on Linux, Mac OS or Windows. Some emulators are specific to a platform (I believe the iPhone emulator requires MacOS).

10 Posted by ppk on 8 April 2010 | Permalink

I left Palm WebKit out of the browser list because I do not have a working Palm device and cannot test it.

Besides, I'm afraid that Palm is essentially dead; their market share has dropped below 1% even in smartphones only, and it's only a matter of time before Palm disappears.

That's a pity; webOS is clearly the best UI after the iPhone (and maybe even before it), but Palm has made so many critical mistakes in the past year and a half that it's essentially thrown away its chance to matter.

http://farukat.es/journal/2010/03/413-palms-slow-descent-and-google-equation gives a good roundup of their mistakes, and you should add to the list a completely failed attempt to interest (web) developers in the new platform. Sure, Dion and Ben now head their outreach program, but I'm afraid it's too little and too late.

11 Posted by ppk on 8 April 2010 | Permalink

Oh, one more thing: the fact that a certain browser uses WebKit says absolutely NOTHING about its quality. There's a huge gap between iPhone/Android and Symbian, both of which use WebKit.

There is no WebKit on mobile!

12 Posted by Jason on 8 April 2010 | Permalink

Here is a emulator for Opera, that works pretty well - http://www.opera.com/mobile/demo/

13 Posted by chovy on 8 April 2010 | Permalink

The webkit browser on Palm's webOS performed quite well in the acid test against the other browsers. They were only a point behind Google's chrome -- a much smaller gap than with the previous webOS release.

14 Posted by Pam on 8 April 2010 | Permalink

Do you happen to know the overall relative prevalence of various Blackberry OS versions? It seems like there's a huge difference between old-ish and newer models in built-in browser rendering, and I've been trying to figure out what versions I want to care about.

15 Posted by Matt Brubeck on 8 April 2010 | Permalink

The Android emulator is good - I used it along with various handsets for twelve months of full-time Android-specific web development, and found no rendering or behavior differences between emulator and device.

Android's emulator uses qemu to emulate the actual hardware (down to the processor) and runs the exact same code that is installed on the device. Even if you do have an Android phone, the emulator is a good way to test different versions of Android and different screen sizes/resolutions.

16 Posted by René on 8 April 2010 | Permalink

Thx for the overview - helped me for a current client.

17 Posted by Brian Cantoni on 10 April 2010 | Permalink

Is the Safari browser on the iPod Touch close enough to that on the iPhone to make the Touch a suitable test bed?

18 Posted by ppk on 10 April 2010 | Permalink

iPod Touch equals iPhone minus phone connection. So yes, you can definitely use an iPod Touch instead of an iPhone.

19 Posted by ppk on 10 April 2010 | Permalink

@Pam: No, I have little knowledge of BlackBerry device shares. A year ago I made a serious mistake by basing my BB research on the touchscreen Storm, because I was unaware that BB users mainly want to text and thus require a physical keyboard.

I'm catching up now, but my BB research is behind my other research due to this mistake.