It was a struggle but Cling finally works on Android platform level 7. I had to
rewrite all of the XML parsing routines because, and this is truly hard to believe, you can't even print an
org.w3c.Document graph into a string. There is no transformer on Android 2.1, only in platform 8.
The code that generates XML descriptors (the actual strings) is therefore really ugly and I will revert that as soon as 2.2 is more mainstream.
(Naturally, in 2.2 they added a SchemaFactory but it's broken, so now you can print your DOM but you still can't validate it. It's a good thing then that you can't validate UPnP descriptor XML with W3C schema anyway. Those MSFT geniuses sure were planning ahead.)
So now I'm able to run and test Cling on my Motorola Milestone with Android 2.1. I've updated the demo application (UPnP browser). Get the source code archive here and if you are feeling adventurous, you can install the app on your phone: Browse to http://teleal.org/projects/download/misc/ on your phone and click on the APK archive. After the download finished, click on the downloaded item which should bring up the installer.
Here is a video of the browser and the binary light service running on the phone, which I'm switching from the Workbench application on my desktop:
Alright, what's next then...
