Ask yourself – how many technologies have you considered for Android development?
Android captured the interest and imagination of many developers at O’Reilly OSCON 2010 last week in Portland, Oregon (I traveled there to check out a few sessions). So much that several Android and mobile technology sessions drew packed, standing-room only crowds.
My attention was drawn to the variety of technologies used to create Android applications. Let’s talk about two, mobile web technologies and the very popular Android SDK.
Mobile web applications are built with HTML, CSS, and JavaScript and run in a mobile browser. Jonathan Stark presented a great session comparing them to native device applications – in our case, Android Java applications.
These seem to be the benefits of web applications for Android:
But keep in mind that:
One development platform available for Android web apps is jQTouch. Using jQTouch, you can build a web app with an iPhone look and feel, and then change stylesheets to give your app an Android look. (See Jonathan’s site for details.)
If you want to develop a web application that uses certain device features, as well as submit the app to Android Market or another app store – consider a platform like PhoneGap, built by Nitobi Software (OSCON session here). PhoneGap creates an Android Java project with a JavaScript layer that calls Android Java APIs. You add your HTML, CSS, and JavaScript files, and the project is compiled to an Android APK file.
The device features that are available for various mobile platforms are listed in the PhoneGap roadmap. (However, we at MOTODEV have not done extensive work with either jQTouch or PhoneGap, so we can’t actually endorse them.)
Now let’s think about Android Java applications (the kind we all know, that are built with the Android SDK and run on the Dalvik VM). Android Java apps are great when:
For Android Java development, you use the Android SDK, of course. If you want an IDE, you can use Google’s Android Development Tools Plugin with your Eclipse installation or MOTODEV Studio for Android, either the standalone or plugin version.
OSCON featured some excellent tutorials and sessions on Android Java development (including talks by Marakana and Google, as well as an evening lab with Google Android experts). You can find presentation slides on the OSCON site, or for some Google sessions, the Google I/O site.
The Google sessions did a great job of presenting some key aspects of Android development:
In an Android Java app, you can also use a WebView to embed a lightweight browser and open a web page, thus blending web applications with Android Java applications. Of course, you need to choose a development approach based on your audience and goals.
On a lighter note, the official (and best, and most fun) photos of OSCON are here – thanks and credit to James Duncan Davidson.
© Copyright 1994-2012 Motorola Mobility, Inc. All rights reserved.
Portions of this page are modifications based on work created and shared by Google and used according to terms described in the Creative Commons 3.0 Attribution License.
Android, Android Market and YouTube are trademarks of Google, Inc.
DROID is a trademark of Lucasfilm Ltd. and its related companies. Used under license.
Source code displayed on this page may be licensed under Apache License, Version 2
Copyright © 2010, Android Open Source Project. All rights reserved unless otherwise explicitly indicated.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.