(BTW I would like to thank Telmap again for this great contribution and Eric Coolman who contributed the Lumia skin!)
However, when I stepped up to implement the Windows Phone 7.x support I was shocked at how difficult MS has made the process of building applications for their platform. This took quite allot of effort and some compromises to get working reasonably well, but I'm happy to say that we now have a Windows Phone port of Codename One. We are still defining this as a Technology preview since many things don't work at the moment of this writing, but the "heavy lifting" of creating a Windows Phone application and running most of the kitchen sink demo is working.
The process of using the simulator/sending a build to the server and getting a result is all working.
We will include this full process as part of our next plugin update which we will try to release during or immediately after Java One!
One thing that ANNOYINGLY doesn't work is OTA (over the air) install. MS chose to disable this basic functionality which is even available on iOS (although not well known), they have their own beta solution but its cumbersome even when compared to the iOS approach.
So currently the only way to actually install the resulting builds is via download and using the MS supplied tools to unlock your device then sideloading them using the MS tools. Ugh.There are two alternatives which I didn't get to explore, one is jailbreaking and the other is the beta test mechanism from MS. Both seem to have their issues but whatever works...
The approach we took to our implementation was Silverlight/XNA mixing which is only available with Windows Phone 7.1 (Mango) or newer. It effectively uses the hardware accelerated XNA gaming engine to render all the UI but uses the highly visual silverlight scenegraph to render fonts and native widgets (text input etc.). This approach is quite ambitious but we think it carries with it a great deal of value in terms of performance and extensibility. However since MS chose to change a great deal of their implementation API when going into WindowsRT we will need to play catchup once their platform is available.

Moving forward we still have a great deal of missing functionality in this port but most of it should be trivial to implement in comparison. We are opening the servers for builds now even though basic stuff still isn't implemented (e.g. Networking, Storage, FS, Video etc.) but we want feedback and contribution as early on as possible in the spirit of Open Source.
One of the main things we need to work on is integrating the new Windows UI (formerly Metro) in our platform so it will feel integrated.

0 comments:
Post a Comment