Google's move to let software run natively on Android devices opens the door for a version of Firefox that can run on the operating system.
At present, Android applications are written in Java and run on Google's Dalvik Java virtual machine. Last week, though, Google announced the Android Native Development Kit version 1.0 that lets software run natively on the Linux layer below, though the company sees it as a way not to run full-fledged applications as much as to run components of ordinary Android applications.
"Android applications run in the Dalvik virtual machine. The NDK allows developers to implement parts of these applications using native-code languages such as C and C++," said Google's David Turner in a Native Developer Kit blog post.
That's enough to whet the appetite of Mozilla, the organization that oversees development of Firefox and its mobile incarnation, called Fennec though likely to sport the Firefox name when it arrives in product form.
"Developers are taking a look at the NDK to see if it provides the capabilities we need to bring Fennec to Android. If it's possible, I think our community would be interested in doing it, because Android will be appearing on more smartphones with the capabilities to provide a good browsing experience," said Jay Sullivan, Mozilla's vice president of mobile.
A year ago, Mike Schroepfer, then Mozilla's vice president of engineering before he moved to Facebook, said Mozilla wasn't focusing on Android because of the Java constraint and because Android already has a capable browser of its own.
"We've been concentrating on other platforms that don't have browser or didn't have a good one," Schroepfer said in May 2008. "I'm looking forward to (Google) opening up the entire platform. Today I can't get Firefox on Android because I don't have the API (application programming interface) support.
The browser that ships with Android is based on the open-source WebKit project. That's the same foundation for Google Chrome, Safari on Mac OS X and the iPhone, and the browser on the new Palm Pre, making it something of an incumbent power among high-end mobile phones.
It's not a simple choice to releasing software that uses the Native Development Kit. Using the higher-level Java foundation insulates programmers from worrying about what underlying hardware is in a phone or other device, but using native code means the software must be tailored for a specific processor. It also means that software won't have access to many system-level features that are part of Android.
And writing native code can help boost performance, always a problem on mobile phones with limited hardware and battery life. In a parallel situation on PCs, Google has released software called Native Client that lets browsers run software natively processors for better performance.
Mozilla is interested in a variety of sub-PC devices. "We're also very interested in Netbooks across the operating system and chip architecture spectrum," Sullivan added. "Firefox, Fennec, and other Mozilla-based browsers have been demonstrated on Netbooks running Windows CE, various Linux variants, and Moblin," a Linux-based operating system for mobile devices backed by Intel.
Firefox's core use is on personal computers, though. There, a new version is imminent.
"The Mozilla team is mobilizing to ship Firefox 3.5, and it's looking like Tuesday morning" will be the ship time, Mozilla said in a statement Friday.
However, Mozilla also has issued three candidates instead of the expected one, and in the bigger picture added many new features to 3.5 that kept its release back months compared to the earlier, smaller-scale Firefox 3.1 plan, so give the organization some wiggle room.