Mobile Dev Joy : The Adventure with Mobile Browser

My post today will be rather technical, but I’m sure some will find it interesting because it’s about a topic that’s not as widely discussed as others. Some may even find it useful. It’s about my brief stunt with mobile development.

Some time ago I was asked to look at a web-based apps which is to be used with a mobile phone. A Nokia E70 to be exact. It’s based on Symbian S60 3rd edition platform. Basically, a Javascript which is supposed to run won’t. So I looked into it.

This piece of Javascript is vital for usability reasons. Without it, the input process will take up to 50% longer. So I thought, yeah I’ll set aside a bit of my time and hack this.

Then I realized that when I thought the browser situation on the PC / desktop platform is a mess; it actually look very tidy and well-ordered compared to the situation on the mobile platform 馃檪

First, mobile platform is much more limited — in terms of CPU / processor power, memory capacity, secondary storage (hard disk / flash ram) capacity, power, etc. These limitations in turn must be taken into account by all mobile browsers. Which causes various quirks / incompatibilities to surface when you dig deeper into it.

Second, free(dom) software has not yet made as much impact here as it is on the desktop. Therefore we have plethora of proprietary technologies, which sometimes doesn’t work together / conform to the open standards.

Third, there’s not as many documentations available on the topic. As I googled around, I realized in horror that I may have to hack around much more than I thought necessary.

Back to the hack – first thing I tried was to install Opera mobile (not Opera mini). Yes, we’re willing very willing to pay Opera if it works. In short – the Javascript works on it.
Unfortunately, Opera mobile crashes around so much, it’s impossible to enjoy any kind of productivity with it.

Also there are a LOT of quirks with Opera mobile when used with keypad.
They are small things, but gets annoying very quickly. Which doesn’t help when you’re trying to accomplish good amount of work.

Maybe it’d be better if I try an older version of it, but seeing it consume too much RAM anyway; I thought I’ll give the built-in browser a try first.

Called “Nokia Mini Map Browser” because of its “mini map” feature, it’s speedier than Opera mobile and doesn’t use as much memory. However, the Javascript on our web-apps doesn’t work there.

So I thought, perhaps this browser doesn’t support the latest version of Javascript. Or worse, perhaps it has its own version of Javascript. That would suck greatly.
Anyway, I started to try looking for documentation on the topic, also for a tool to help me debug the problems there.

I found Nokia Mobile Browser Simulator 4.0. It’s Java-based. However, it seems to be hard-coded for Windows, with Windows installer too. Ok so I found a Windows machine, and set it up.

To my dismay, it doesn’t work very reliably. To be precise, it won’t even load the web-apps. While the actual browser in Nokia E70 will display it correctly.

With documentation on the subject (Javascript capabilities of Nokia Mini Map Browser) also very lacking, this is starting to look like a dead end.
Until I found out that the Nokia Mini Map Browser is actually an open source project !

Code named “S60browser”, or “S60Webkit”, it’s available from opensource.nokia.com
There’s hope – if there’s code available, then anything can always be traced / found out.

My sharp-minded readers will quickly realize another thing – yes, it’s basically the same as the Safari browser, the one on Mac OS X 馃檪

Nokia Mini Map Browser aka S60browser aka S60Webkit is based on another open source project called WebKit. Which happens to be the foundation used as well by Apple to build their browser, Safari.

Now this is getting interesting 馃檪

I dug deeper into these new clues, and began to feel sure that both browser’s cores are indeed identical. Which means that I’d be able to debug the problem with Safari browser.

safari-pref-advanced
I fired up Safari, invoked the Preferences screen, and clicked on Advanced icon. I enabled “Show Develop menu in menu bar”, then I restarted Safari. A new menu then showed up. I chose Develop – Show Web Inspector (also accessible via Cmd-Alt-i)

I got the detailed error message in no time. It’s “Object [object HTMLInputElement] (result of expression document.getElementById(“testForm”).submit) does not allow calls“.
As I already mentioned, the script works on Firefox and Opera, but somehow it doesn’t work on Safari. So it’s Googling time again.

Turn out it’s a generic error message whenever Safari have problems executing a function.
So it could be that the function doesn’t exist. Or the function name is mispelled. Or any other function-calling related problems.
Great, looks like this will cause more questions than it answers…

Thankfully I wasn’t on the wild goose chase for too long. A comment on a blog post gave me the hint I needed :

I gave a form button the *same name* as the function it was calling in its onclick. This error was the result.

Joshua, thank you. That’s exactly what happened in my case 馃檪
A line in the script is as follows :

document.getElementById(“testForm”).submit();

While there’s also a button on the same script named, you guessed it, submit :

<input type=”submit” name=submit />

So Safari got confused, and threw this generic error message.

And it’s very easy to fix, I just need to change the button’s name value to something else – and it works now on Safari & Nokia Mini Map Browser, as well as on Firefox and Opera.

I love happy endings 馃檪

Moral of the story ? Open source software empowers developers.

And this is not the first time – my MSc thesis was about to fail; when I found ping’s source code on the Internet. It gave me the hint needed to continue the project. The thesis got among the best mark at that year.

With availability of the source, we can learn from the brightest minds on Earth with ease. The knowledge and wisdom become available for all.
Even to the ones with feeble minds, like me.

Here’s another cheer for free(dom) software movement : May the source be with you 馃檪

(oh, and also, all hail Google !)

242 thoughts on “Mobile Dev Joy : The Adventure with Mobile Browser

  1. I recently came across your blog and have been reading along. I thought I would leave my first comment. I don’t know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.

    Sarah

    http://grillsblog.com

  2. Input tags submit dengan name=”submit” memang dosa masa lalu yang terus menghantui. Banyak kode2 lama saya yang masih seperti itu, dan akan menimbulkan masalah di browser baru maupun di kode javascript menggunakan framework, seperti jQuery.
    Banyak sekali ilmu sesat dari dahulu kala, yang sadar atau tidak sudah kita gunakan di kode yang kita tulis. Saatnya sekarang mengikuti standar W3C 馃檪

  3. Wah posting yang sangat menarik mas.
    Btw, saya juga punya website buat kenal-kenalan loh, kali aja ada yang
    tertarik mau liat2 dan bergabung akan sangat dihargai partisipasinya.
    Silakan bagi yang mau berkunjung ke http://WWW.FLANET.NING.COM

    jangan lupa DAFTAR ya.. ditunggu… 馃檪

  4. I like the analogy clint but you’r e frogetting one other player:Microsoft they’ve had eindows moblile phone for quite some time now and there doesn’t seem to be the same mass market shift that you’r e talking about.Perhaps it is because the cailber of the apps on windows moblie are not as compelling or is it because windows suffers form having too many installed and slow dowen or corrupt the phone

  5. What about BlackBerry?
    .
    I found no words explaining on it, or maybe I overlooked at it 馃檪
    .
    Thanks for the info…

  6. I love happy endings too… hehe

    and I agree with U… Open source software really empowers developers…

  7. Interesting post, but I don’t agree new devices with mobile platforms are limited of resources. I have no problems browsing, but had a lot with programming for mobile platforms. Thanks for the post!

  8. You’re right, it was a bit technical, but I was able to follow along. This was a great post. Very informative and helpful. I personally run Microsoft Mobile from my phone.

  9. Oh wow, Nokia’s browser is based off of webkit?! I had no idea, that’s totally awesome. I love my blackberry, but I’m now I’m envious of Nokia owners.

  10. I didn’t know that Nokia’s browser was based off of webkit either! I have a Motorola, i’m pretty happy with its microsoft applications. I think you should write more posts in english! i really liked this one!

    -nick

  11. Interesting post, but I don鈥檛 agree new devices with mobile platforms are limited of resources. I have no problems browsing, but had a lot with programming for mobile platforms. Thanks for the post!

  12. @yonna – blackberry is a mystery to me 馃檪 I don’t know much about it. I own Nokia E71, considered as BB’s rival. Technically more powerful, but usability-wise, not as excellent. But I’m a techie 馃檪 hence the choice.
    .
    Sorry for not answering your question, hopefully someone else will be able to answer it.

  13. Wow these are looking great..Thanks for your good information keep it online and one more think your blog load faster.can you share where you host your blog..i think you can email me..

  14. Very nice post! But as for me I have no problems browsing, but have a lot with programming for mobile platforms. I have the same mobile phone as you are and in concept I dont regret that I bought it.

  15. I recently came across your blog and have been reading along. I thought I would leave my first comment. I don鈥檛 know what to say except that I have enjoyed reading. Nice blog. I will keep visiting this blog very often.

    Sarah

  16. Thank you so much for giving me a lot of information. I could say that I personally run a Microsoft Mobile from my phone. I now know that Nokia鈥檚 browser is based on webkit.

  17. Opensource has really changed the landscape of software and indeed, may the source be with you too !!

  18. I’m also using the Opera Mini! Awesome little browser… 馃檪
    I’m waiting for my new N97, I should get it in a few days, and I’ll see what improvements they have there.

  19. While the Simbian browser is pretty good when compared to other mobile browsers, I think that the Opera Mini browser is the best mobile browser available. I鈥檓 using it on my N95鈥

  20. I thought I would leave my first comment. I don鈥檛 know what to say except that I have enjoyed reading. Nice blog.i am very happy to read this blog.

  21. Interesting post, but I don鈥檛 agree new devices with mobile platforms are limited of resources. I have no problems browsing, but had a lot with programming for mobile platforms.

    Anyway Thanks for the post!

  22. Nice article
    Thank you so much for giving me a lot of information. I could say that I personally run a Microsoft Mobile from my phone. I now know that Nokia鈥檚 browser is based on webkit

  23. How do we enable javascript to work in the e51? In laymens terms pls.

    The settings say javascript enabled but i still cant access certain links or functions. Im using nokia’s builtin browser too.

  24. That’s good you’ve decided to write on mobile dev and mobile browsing in particular – it’s not often onecan find an article that makes sense related to the topic.
    My colleague actually has Nokia E70, so I forwarded the post to him – hope he’ll have the same interesting time reading it that i had

  25. Ya i too agree you have discussed a topic that is quite different. Your information about mobile browser seemed to be effective. You elaborately explained certain aspects which proved to be fruitful.

  26. VOB Converter for Mac os x is really a great software which can help you convert vob files on Mac to various video formats such as mp4, avi, mov, mpeg-4 etc. It is an all-in-one mac vob converter that can both convert vob video files on your hard drive and convert vob files on dvd disc.

  27. Great series of post. I have read a lot about this on other articles written by

    other people, but I must admit that you is the best. Thanks

  28. meskipun english sy acak2an.. pi sedikit2 saya bisa nangkep isinya…. nice info pak harry…. keep posting..

  29. Hallo, Salam kenal, Saya derry, ini pertama kalinya Saya berkunjung ke Blog ini.
    Sebagai salam perkenalan, izinkan Saya memasang Link Anda di blog Saya sbg pengingat alamat UrL agar mudah mengujungi kembali blog ini.
    Link Anda telah di pasang di bLog Saya http://sinjayschool.blogspot.com/ di bagian 鈥淢y Friends鈥 dg Anchor Text 鈥渉arry sufehmi鈥.
    Thanks By Sinjay School

  30. Your experience is very important to be shared. We have many things that can be shared each other in case we find the same problems. Thank you for your information.

  31. interesting article, I really liked your article. I will keep visiting to read your article quality. if you’re willing I hope you can visit my blog. I am very excited to read and read your article. from your loyal fans.Tika

  32. Thanks for posting, This is really a great and detail post. I鈥檒l definitely will subscribe to your blog.

  33. This article can be useful for those who need mobile information through browsing. The suitable mobile browser can be chosen then.

  34. agree with this comment:
    I like the analogy clint but you鈥檙 e frogetting one other player:Microsoft they鈥檝e had eindows moblile phone for quite some time now and there doesn鈥檛 seem to be the same mass market shift that you鈥檙 e talking about.Perhaps it is because the cailber of the apps on windows moblie are not as compelling or is it because windows suffers form having too many installed and slow dowen or corrupt the phone game pc download gratis

  35. It would be the Best tech gear. who wont love to use it? Despite basic things now mobile usage will definitely grow for special purposes like internet technology as well.

  36. mobile internet is simply awesome and with the new models of phones that are available in the market, mobile internet is simply awesome to use

  37. I know that computer is a necessary for most of people. People can’t work without computer. With the development of tech. More high speed computer was develped and people can improve the work easily. Happy every body.

  38. I have no problems in browsing, but have a lot of problem with programming for mobile platforms. Hope your tips will be helpful for me to solve my problem..

  39. blog ini cukup ramai sekali , penataanya juga cukup bagus ditambah dengan artikel yang bagus pula , sungguh sangat sempurna !!!
    Salam Kenal !!!
    Jangan lupa berkunjung ke blog saya
    Terima kasih
    gan

  40. Thanks for the interesting post. I look forward to reading more from you in the future. Keep it up!

  41. This post but why i used it.If my mobile have slow down when we use it and install is to symbian s60 mobiles.S60 already have many advantages which i do simply then why i use such a difficult task.

  42. Mobile market is rapidly growing and also enhncing users knowledge in second rather than in days or months.Your stuff is truly amazing

  43. Great article. I agree with everything you read here. I would like to congratulate the writer and encouraged him to continue writing such valuable materials. Good luck

  44. love is always beyond us, so we should save it in our heart forever, it is best for us to do everything.

  45. Great informative post and i really likes your information, most of the peoples are likes your blog because its having the good knowledge. thanks for your good informative post.

  46. Exactly what I was looking for, thanks for putting up. 鈥淭here are many victories worse than a defeat.鈥 by George Eliot.

  47. There is obviously considerably to know about this. I think you made some terrific points in the Options also.

  48. Many fashion ladies always pursue fashion Cheap Louboutins, they often pay attention to famous brand. Especially purchasing their Discount Christian Louboutin, certainly, they try to choose a pair of distinctive Cheap Louboutin Shoes. Beautifully show daily work profile. It is no doubt that Christian Louboutin Ankle Boots are a fun choice in true fashion for women. This Christian Louboutin Boots will be perfect for the weekdays and the weekends.

  49. Terima kasih gan atas informasinya, sudah beberapa hari ini saya mencari informasi ini, ini sungguh sangat membantu saya . mulai sekarang saya akan bookmark blog ini agar saya bisa kembali dan melihat informasi yang terbaru.
    mungkin agan atau pengunjung blog agan juga membutuh kan infomasi dari saya, silahkan liat artilek saya yang sangat Mohon kunjungi website kami
    http://www.168sdbet.com
    Terima kasih

  50. 50 Price reduction Intended for All Private Proxies! Professional quality, Endless data transfer useage, 1000 mb/s superspeed, 99,9 uptime, Non sequential IP’s, No use standards, Various subnets, USA or European union proxies – Invest in Today – DreamProxies.com

Leave a Reply

Your email address will not be published. Required fields are marked *