Google shares Android source code
Published: 22 Oct 2008 08:30 BST
Less than a year after announcing Android, the open-source phone operating system intended to jump-start the mobile internet, Google began sharing the project's underlying source code.
The Android Open Source Project site includes a project list, a feature description, guides to the roles people can play in the project and how to contribute, as well as the Android source code itself.
Google has one team of programmers building the software and another professional services group to help support phone makers building Android phones. However, with T-Mobile's G1 now arriving on the market, Google hopes to draw upon the collective energy of outside contributors to the project.
"Our plan is a launching point for a much more vibrant open-source community," said Rich Miner, vice president of Google's mobile-platforms business. "For the past almost four years, this has been a large effort between Google and our partners. There have been a lot of people working on the code, but that's going to be multiplied by several orders of magnitude."
Open-source software can be freely used, modified and redistributed by anyone — freedoms that make it a daunting competitor to proprietary-software companies that charge for the code. Although open-source software rarely has been the sole basis for a thriving company, it can be a powerful tool to aid a broader agenda. Sophisticated technology companies, such as IBM, Oracle and even Apple, often subsidise open-source projects for that reason, and Android fits into that category.
Android beyond the T-Mobile G1
Four members of the Open Handset Alliance, which co-developed the Android software, build mobile phones: HTC, which builds the T-Mobile G1, Motorola, LG Electronics, and Samsung. Another alliance member, Wind River Systems, believes Android will power consumer electronics devices, including set-top boxes and in-car computing systems.
Now that Android is open-source software, however, other manufacturers may use it, and Miner said they will. Indeed, Wind River said Kyocera is building an Android phone.
"Think what happed to PC clones in the 1980s and 1990s timeframe. We're starting to see, coming out of Taiwan, the equivalent of a Micron motherboard," said Miner, referring to inexpensive mobile-phone hardware that now can be made useful with Android.
This time, however, Microsoft Windows isn't going to be the operating system that rapidly spreads, if Google has anything to do with it.
"There are a billion mobile phones sold every year that don't have a good, highly connected mobile operating system," Miner said. Android is intended as a solution to that issue — one that sidesteps the controls over software by rival operating systems such as Windows Mobile and Nokia's Symbian, he said.
"We feel fairly strongly, and it's resonating loudly through the industry, that innovation is maximised when no one entity controls a platform," Miner said.
Making Android open
It is a maxim among open-source fans that projects that begin as open source fare better as such than those that begin as proprietary projects and are retrofitted with an open-source governance. For example, the Linux kernel project has thrived as an open-source project since its earliest days, offering various different ways that people or companies can involve themselves, but it took several painful years before the Mozilla open-source Netscape project finally became relevant in the form of Firefox.
Some open-source fans have criticised Google for being too closed with Android in its early stages. But Miner insisted that Android, while initially developed in-house, is indeed a true open-source project.
"It was built with intention of open-sourcing it," Miner said, pointing specifically to project details such as its architecture, comments in the code, and the code's structure. "We decided we didn't need to build release 1.0 as open source... We engineered 1.0 as a best-in-class, fully staffed, engineered product. Having delivered that, we think it's time to start leveraging the benefits of what open source can bring."
The code is managed by the Android Open Source Project, and anyone contributing code to the project must sign a contributor's licence agreement, Google said. The project is separate from Google, the company said, but it's not immediately clear just how independent.
Android ingredients
Android is big. With 11 million lines of code, about 8.6 million of them are open-source, according to an earlier interview with project leader Andy Rubin. But what's in Android exactly?
At the foundation is a stripped-down Linux kernel that communicates with a phone's hardware, and Android supports multiple phone processors. Much of the Android work, however, takes place one level above that.
On conventional computers, software runs directly on that operating-system kernel. But Android includes a 'virtual machine' software layer called Dalvik that runs applications written in the Java programming language. Dalvik isn't a part of the mainstream Java community built by Sun, but it is very close from a programming perspective.
A host of built-in applications are available to run on Dalvik, including software for dialling the phone, using online maps, browsing the web, using email and Gmail, and managing contacts. In addition, Open Handset Alliance partners have contributed software, including a speech-recognition engine from Nuance and audio and video decoder software from PacketVideo.
However, with this flexibility can come chaos. Google said it will offer a compatibility test suite to ensure various versions of Android remain compatible.
One advantage of using this virtual-machine technology is that Android programmers don't have to worry about what underlying hardware a phone uses. That's an important factor when it comes to sharing software, most notably through Google's Android Market download service, because programmers won't have to build different versions of software for one phone processor or another, and people won't have to know this obscure information either.
However, Dalvik doesn't get around all the complexities of the computing world. For example, a game might require a touchscreen, but not all Android phones necessarily will have that higher-end feature. For that reason, Google plans to build a profiling feature into the Android Market so users will be able to download only software appropriate for their model. With only one Android phone on the market until 2009, that complication is a moot point for now.
Credit: Google's open-source Android now actually open from CNET News
- Photos: A rough guide to mobile open source
- Analysis: Android may spread beyond phones
- Roundup: First Google Android phone unveiled
- T-Mobile G1 (HTC Dream): A first look
- Analysis: First Android phone enters the smartphone fray
- Photos: T-Mobile G1 (HTC Dream)
- How Android stands out in the smartphone space
- Android in action on T-Mobile's G1
- Google releases final Android SDK
- T-Mobile G1 (HTC Dream) review
- Google shares Android source code
- Coders to profit as Android Market opens



























