Tuesday, April 8, 2008

How to create application, that will work on all java enabled mobile phones?

Impossible. Unless this application is "Hello world".

Some simple tips:
  • forget "write once, run anywhere", this doesn't work on mobile devices.
  • Devices has various screen sizes, that means if you want that your application will look good, you will need separate builds for different screen sizes.
  • Devices has various java implementations (CLDC, MIDP, included JSRs, ..), that means what will work on one device , most probably won't work on other device)
  • Manufacturers are trying to help developers and testers by creating groups of devices with one java implementation. For example - Sony Ericsson java platform strategy. Theoretically you can create build for one device on each platform and screen resolution and assume that it will work on other ones. Nokia has something similar - they have developer platforms (like S60v3).
  • Devices could have some specific bugs or issues, J2ME Polish have quite good database. So most probably you it won't be enough to create generic build for some group of devices.
  • It's not all over. Many operators like AT&T or T-mobile like to change java implementations on phones, most probably they will restrict installing your Verisign signed application or deny making socket connections.

No comments: