Android OS. Google's Mobile Device Operating System. Intro & Overview. Steve Mance. Agenda. Intro/Overview Hardware and IO Kernel Software Architecture Programming Languages Application Framework and Components Future for mobile and non-mobile platforms.
Google's Mobile Device
Intro & Overview
Samsung Galaxy Tab 4G
Asus Eee-Pad Transformer
Samsung Nexus S
Hardware and I/O
Chipset: ARM-based (32-bit Advanced reduced instruction set computer architecture machine). Dalvik VM graphics processing, currently assume an ARM architecture.
Memory: 128 MB RAM; 256 MB Flash External. Android can boot and run in configurations with less memory, but it isn't recommended.
Storage: Mini or Micro SD. Not necessary for basic bring up, but recommended.
Primary Display: QVGA (320×240) TFT LCD or larger, 16-bit color or better.
Touch screen interface no smaller than 2.8 inches in size.
Navigation Keys: 5-way navigation with 5 application keys, power, camera and volume controls.
Camera: Must have a resolution of at least 2 megapixels, but not required.
USB: Standard mini-B USB . For flashing the device system images and debugging.
Bluetooth: 1.2 or 2.0, but not required.
Android allowed a remote device to be controlled over serial port
If device not attached, phone would execute ALL text input as shell commands
Typing “reboot” in an email/browser/anywhere would result in phone rebooting
Architecture and Components at fault! Promptly fixed, but jeopardized Android’s reputation.
Programming on Android
1. Install Eclipse or own IDE
2. Install ADT plugin, or an editor of your choice
3. Set up Android Virtual Devices or hardware devices on which you will install your applications
4. Create an Android project
5. Build and run your application
6. Debug your application with the SDK debugging tools
7. Test your application with the Testing and Instrumentation framework
• Four types: Activities -
Services - Content
Providers - Broadcast
• Part of the building blocks
• Each component type
performs its own unique
• Activities can be thought of
as a single view that
provides a user interface
• Each activity is it's own
entity but all activities work
together to form the
• Services are tasks that run
in the background
• Run on the main process
thread unless otherwise
• Examples include playing
music while using other
network transactions, etc
(Image from http://marakana.com)
• Content Providers allow for
• Applications must have
necessary permission levels
• For example allows
applications to select an
image from the phones
library, select a contacts
info from the contacts list,
• Broadcast are system wide
• Broadcast Receivers allow
applications to receive those
notifications and act
• For example releasing
allocation memory on a low
Android predicted to grow in market share:
Mobile Growth Visualized
Eric Schmidt (ex-CEO):
What does this mean for Android?
Chrome OS heavily utilizes the cloud.
The merger may bring more cloud services to Android, possibly eliminating the need for internal storage.