BEIJING, Nov. 19 (Xinhuanet) -- Instead of using the standards-based Java Micro Edition (JME) as an engine to run Java applications on its new mobile phone, Google wrote its own virtual machine named Dalvik for Android, and Sun isn't happy about that.
Software developers say there are disadvantages and advantages to using Dalvik, but technology may not have been the driver for Google. Google most likely built Dalvik as a way to get around licensing issues with Sun that would have come with using JME, said Stefano Mazzocchi, a developer and board member at Apache Labs.
Phone makers that incorporate JME into their phones must license the technology from Sun if they intend to make any modifications to it, Mazzocchi said. A phone maker could freely use JME under an open source license if it shares innovations to the software with the community, but most large handset makers are reluctant to do that, he said.
Rather than require phone makers to license JME as part of Android, Mazzocchi said, Google built its own virtual machine. Dalvik converts Java bytecodes into Dalvik bytecodes.
"So Google can say Dalvik is not a Java platform," said Hari Gottipatti, a mobile developer who also has been examining the issue.
Gottipatti believes that the technical differences in Dalvik were the main driver for Google, not the licensing issue. The license fee that handset makers must pay for JME is very nominal, he said. He thinks that if Google asked, Sun would have included JME in Android and waived the licensing fee.
Still, Google could run into trouble. If Google used any of Sun's intellectual property to build Dalvik, Sun could sue Google for patent infringement, Mazzocchi said.
"I'd be very curious to see what Sun would do," he said. That's because Sun is a staunch advocate for open source, so it would hardly appease the open source community to sue Google over an open source software stack.