There has been a lot of buzz recently around Widgets because of the support in the upcoming Windows Mobile 6.5 release. However don’t forget that Widgets are based on web standards and therefore can run on a wide variety of platforms. For example Samsung has just released a Widget SDK for their phone handsets:-
This covers a couple of Windows Mobile devices as well as those running on other platforms. Their SDK ties into the Eclipse developer tools which is probably not something which will be familiar to those who concentrate on Windows Mobile development. As we know though you can create Widgets with notepad if needs must.
Because Widgets are standards based that doesn’t mean that you can easily write a single Widget and then run it on a variety of platforms. While Samsung have provided a consistent model for their different phones there are still cases where you would want to customise the widget for different device types. Likewise between different SDKs there are some device specific objects which are not present across all platforms – for example on Windows Mobile a number of SystemState properties are exposed. So while you may be able to share part of your code between different platforms you are going to need to make changes and test accordingly to support a wide range of devices.