
Few days ago I finally got my G1 and have started looking around on some hacks and programming related stuff made for Android OS. While I was browsing through the Market app on my phone, it is safely to say that I was intrigued when I found out that there is Mono library available for download.
Android OS is build on top of Linux kernel, and running the Mono was surely possible (with some tweaking of course). The author of this first try Koushik Dutta, has a couple of detailed posts with instructions how to do this yourself and run Mono on G1 (you need your phone to be rooted). Source code is available at http://code.google.com/p/androidmono/
Google’s official position is rather predictable , that is – no official support in predictable future. The ‘Don’t be evil’ company and Open Handset Alliance would like to keep their feet dry from anything not from Open Source stack. After all, they did not went the easy way and use the for eg. JVM in the first place to be free from Sun, and got their own VM, Dalvik, so although Android OS apps are written in Java, they are compiled to Dalviks own bytecode.
Unfortunately I am afraid that without official support, it is unlikely that Mono will be used widely, that is beside the programmers/geeks community. But will see how situation develops, as the Miguel de Icaza itself, some time ago outlined a couple of ways that Mono could exist on Android OS:
- CIL to Dalvik recompiler: Translate CIL bytecodes into Dalvik ones, like (like Grasshopper does) and provide a class library add-on.
- DalvikVM: Implement a VM similar on top of Mono that can run Dalvik bytecodes side-by-side with other CIL code. This would be similar to the IKVM approach: a JavaVM for CIL.
- Dalvik Support in Mono: Paolo suggested to add support to the Mono VM to have a Dalvik loader and turn the Dalvik instructions into the internal Mono IR (the rest at that point would be shared).
- D/Invoke: Add support to the Mono VM to transparently call code into another VM. Very much along the lines of P/Invoke or COM’s it-just-works support.
I think that having Android OS to be compatible with .Net Compact Framework would bring benefit for users and for Google as it would speed up adoption for enterprise apps. Windows Mobile position on this part of the mobile market is very strong and this year they will try to expand with WM 6.5.
0 Responses to “Will Mono bring .NET to Android OS?”