Notes on Series 40 Development

Developing for S40 devices has always been an interesting challenge because of the combination of APIs and SDK versions. Out of the 205 S40 devices listed on Nokia’s developer site, 91 phones use one of 10 different SDK versions. What we then have to consider is which JSRs are supported on each SDK version.

Developing for S40 devices has always been an interesting challenge because of the combination of APIs and SDK versions.
Out of the 205 S40 devices listed on Nokia’s developer site, 91 phones use one of 10 different SDK versions. What we then have to consider is which JSRs are supported on each SDK version.

If you have to write an app that targets multiple SDKs, you might look for a way to package the app once and have it install on all devices. Although it is technically feasible to do so, it is not guaranteed to work in all cases and can cause complications with testing and support. So even though the ideal is to ship a JAR that detects if a JSR is available and hence can install on devices that don’t support the JSR, it is usually necessary to create separate JARs for release, sometimes with a different SDK version (and then re-test).

The decision can be made simpler if you know which countries you are targeting, the most popular devices that make up your target demographic, and the specific capabilities your app must have.

Here are the APIs per SDK version:
http://www.developer.nokia.com/Develop/Java/Tools/Series_40_platform_SDKs/#article1

There are 205 Series 40 devices listed on Nokia’s site:
http://www.developer.nokia.com/Devices/Device_specifications/?filter1=s40