Android Software Development
The Android operating system is based on Linux with Google customisation for mobile phone and mobile Internet devices. It can work on ARM processors used in phones and Intel / AMD / VIA processors used in computers
The Open Handset Alliance which created Android includes carriers, mobile manufacturers, semiconductor manufacturers, software companies and integration companies that bring the useful devices to market.
Google released a sample
Android phone built called Nexus One by HTC which includes advanced
features.
| Parameter | Value |
| Size (mm) | 119 x 60 x 12 |
| Screen | 3.7 inch diagonal |
| Resolution | 800 x 480 |
| Storage | 4 GB expandable to 32 GB (micro SD card) |
| GPS | yes + compass |
| Camera | 5 mega pixel with flash + video capture |
| Accelerometer | yes |
| Touch Screen | yes |
| Connector | micro USB socket and USB cable |
| Wifi | yes b/g/n |
| 3G | yes unlocked for any carrier |
| Audio | yes 3.5 mm stereo connector dual microphones with noise cancellation |
| Weight | 130 grams |
| processor | Qualcomm QSD 8250 1 GHz |
| Advanced feature | voice response for phone and computer functions |
Other Android Devices
HTC Dream
HTC Hero
HTC Magic
LG GW620
Motorola Backflip
Samsung Galaxy i7500
Linux Platform Advantages
- Full control of application folders and files on your 'super phone'
- Hardware creation is not limited
to 1 manufacturer.
- Android phones available under
$600. Taiwan is making Andriod phones for under $300 US.
- Android mobile is not locked to individual carriers.
- Security, display, USB, memory management, Wifi driver models already exist.
Android Development
- Free development tools available from Windows, Mac or Linux machines Android SDK
- Java skills can be used with Android development Java Tutorials Java Documentation
- Free Integrated Development Environment software Eclipse
- Free Eclipse Android Development Tools (ADT)
- Google login required. E.g. Gmail (free)
- Google Developer Account $25 US
- Use of any Android phone for development and testing is possible.
- Development fully unlocked phones available. USB connected debugging possible. Phone imaging is possible on development phones.
- Android Virtual Devices exist for development and testing to specific model phones.
- Development Guide
- Android SDK packages
- Android Resources
- Single application can provide for devices with multiple screen resolutions
- New libraries exist for touch interface and mobile optimized graphics.
- A defined list of device services and device managers can be accessed by programming.
- Android phones come standard with Home, Contacts, Phone and Browser sections.
- Contacts are read write accessible by applications.
Android Platform
| Applications | Home, contacts, phone, browser, apps |
| Application Frameworks | Activity Manager, Windows Manager, Content Providers, View System, Notification Manager, Package Manager, Telephony Manager, Resource Manager, Location Manager, XMPP service |
| Libraries | Surface Manager, Media Framework, SQLite, Open GL, Free type, Webkit, SGL, SSL, libc |
| Android Runtime | Core Libraries, Dalvik virtual machine |
| Linux Kernel | Display Driver, Camera Driver, Bluetooth Driver, M-Systems Driver, Binder Driver, USB driver, Keypad driver, Wifi driver, Audio driver, Power Management |
Android Application Examples
- GPS applications
- MAP applications that can use the built in Map features
- Database driven applications using SQL lite
- Applications that use browser features
- Multi-threaded applications
- Network applications
Application Deployment
Applications need Certificates
in development and release. Private certificates are alright.
Compiling
process can be completed with a certificate and private key.
Installation checks can be made
with a manifest file to ensure only compatible device will install
application.
No permissions are needed to
release an application to the marketplace
Mobile Market Share
- Over 3 billion mobile phone in the world
- Smart phone features are becoming more common
Market Place
- There are over 20000 applications available for Android devices.
- Both free and paid applications possible