Opera Mobile for Android

Opera Mobile Android - Zoomed Out Opera Mobile Android - Zoomed In

I finally got a chance to try the  Android Beta version of Opera Mobile 10.1 that was released last week.  It’s available in the Android Market for devices running Android OS 1.6 and later.  There’s a special Android OS 1.5 build that’s only available directly from Opera.

If you never used Opera Mobile before the first thing you will notice is that it’s look and feel are almost identical to that of Opera Mini.  Appearances are deceiving in this case as Mini and Mobile are completely different under the hood.  Opera Mini is a server assisted browser. Pages are rendered and optimized by servers in Opera’s Google-sized data centers around the world and then sent to the lightweight Opera Mini client, which is basically a lightweight viewer.  Opera Mobile is a traditional web browser that connects directly to any site’s web server to retrieve, parse and render html, CSS and JavaScript on the device itself.

Opera Mini has the advantage of working well even on the most basic phones and slowest networks as the hard work is done on the server.  The trade-off is that interactive web apps using complex JavaScript tend to work poorly or not at all with Mini. Opera Mobile is at its best on devices with  a fast CPU and network  and lots of memory.  Most Android phones fall into that category but not all. I tried Opera Mini on three Android phones;

  • HTC Evo – 512 MB RAM (190 MB free at start up) 1Ghz Snapdragon CPU Android 2.2
  • Motorola i1 – 256 MB RAM (146 MB free) CPC 500 MHz ARM 11 CPU Android 1.5
  • Google Ion (HTC Magic) – 192 MB RAM (40 MB free) 528 MHz ARM 11 CPU Android 1.6

Opera Mobile looked like it was made for the Evo with smooth transitions, fluid pinch zooming and no lag at all when scrolling.

Opera was also quite usable on the i1 although pinch to zoom seems to be disabled.  Scrolling quickly showed a blank page for a second or two before the content was displayed.  Large pages with lots of images tended to have some broken images.  The images loaded correctly if you did a long press on  the image and choose “openimage”.

Because of its limited RAM I didn’t expect the Ion to be able to run Opera Mobile at all,  but it surprised me.  Scrolling was actually  less laggy than with the i1 and their were fewer broken images.

The Ion’s downfalls were multiple tabs and  multi-tasking.  One tab worked well, two was OK, but everything slowed to a crawl with large pages loaded into three tabs.

Even with just a single tab open on the Ion it was impossible to switch from Opera Mobile to another app without the OS shutting down Opera Mobile.  By itself that wouldn’t be so bad (the same thing happens with Opera Mini and the Android browser on this device). But unlike Mini and the Android browser, Opera Mobile doesn’t save and restore its state when terminated by the OS and relauched.  Just going to the Android home screen to check the time (because Opera hides the Android status bar’s clock)  would close Opera.When you switch back to Opera the browser reloaded with the Speed Dial start page.

Like the i1, there is no pinch zooming with Opera on the Ion. I don’t know why as Skyfire and the Dolphin browser manage to have pinch to zoom on the same device.

While I doubt I’ll be using it much on the Ion, Opera mobile is a highly capable browser on Android devices with adequate RAM like the Evo and i1.  It supports Geolocation and handles complex Javascript pages well.  In fact, Opera Mobile is the only Android  browser I’ve tried  that works properly with the Javascript rollover menus found throughout the WordPress administrative console (image, bottom left).

HTML and CSS support is good, even better than Opera Mini,  and all the pages I tried were rendered accurately.  Stability also seems excellent, even in low memory situations on the Ion, Opera never crashed or force closed.

Opera Mobile Android - BBC Homepage Opera Mobile Android - No Flash On Froyo

In addition to being fast and capable web browsers, Opera Mobile (and Mini)  bring a some  unique capabilities to Android; they let you save web pages to the file system for offline viewing, browse  the device for files and upload them to online services like QFS.mobi on any Android OS version and  backup bookmarks to the cloud and synchronize them with Opera desktop and mobile browsers on other devices using Opera Link.

This is an early Beta and there are definitely some warts. The biggest pain points for me were:

  • Tiny text on many pages at 100% zoom level.  Zooming in to make the text readable  made images blury. There needs to be a way to make text bigger without screwing up images.
  • Very limited  Adobe Flash support even on Froyo.  The Evo has a Flash player and just about every Flash video on the web lauches in the player when clicked from the Android browser.  Opera Mobile was able to launch the Flash player when clicking on videos on the YouTube desktop homepage but nowhere else.  Even embedded YouTube videos on third party sites didn’t work.
  • Zooming on OS 1.5 and 1.6 devices is cumbersome. Not only is there no pinch to zoom but the zoom controls are buried 6 taps deep in the menu tree.  If pinch to zoom is impossible on older Android devices (which I don’t believe is the case) there should at least be onscreen + and – zoom buttons like the Android browser has.

In spite of a few gripes I’m happy to see Opera Mobile on Android. The Google mobile OS is shaping up to be a real browser battleground.  With yesterday’s launch of  Netfront’s  Android browser there are now Android browsers using five different rendering engines;  Opera Presto, Android Webkit, Firefox Gecko, Netfront and UC.  I need to try the latest Firefox for Android as well as Netront and do an Android browser shootout.

Opera Mobile Android - WordPress JavaScript Rollover Menu Opera Mobile - GigaOm