I have updated my programming projects page to include a reference to the Windows Phone projects that I have been working on. It is a commercial app made for a client. It is a port of their existing Android app.
This has been a very interesting project. The first version of the app on the Windows Phone is being Beta tested at this time by customers of my client. The project is not finished but all of the features needed for the first shipped version are working.
The app is a form submission app designed to be used with a remote server. Workers in the field fill out forms that are applicable to their work and submit them to the server. Some features are:
Updates to form data and submissions of completed forms on the phone are handled via a web app on a remote server. Forms are defined by data created on the server and are not coded into the app.
Nearly every common Windows Phone control, as well as numerous custom controls, are supported in the app.
GPS tracking is supported.
The camera is supported and forms can include photos.
Bar code scanning is supported through the use of a third-party source code library.
Multitasking within the app allows constant app use while communications with the server happens in the background.
Look and feel is consistent with the Windows Phone style guidelines.
Form access to web pages on the internet is supported.
Use configurable form formatting is available to support user preferences.
Many other small features make the app consistent with the Windows Phone app style while still working with generic data on a remote server that was originally designed for an Android app.
One interesting feature of the project, not the app, is the build system where numerous customized versions of the app can be built from the same set of sources. Things that differentiate on version from another are contained within XML configuration data that is read at startup. This configuration data can include data about the app name, page titles, splash screen images, and flags to control the visibility of specific features.
Microsoft is now using a Microsoft branded version of this app as an internal tool.