Download Google Android as a mobile development platform

yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Google Android as a mobile
development platform
T-110.7111 Internet Technologies for Mobile
Olli Mäkinen
Google Android
• Google’s own mobile operating system based on Linux
• Open source with all primary components published
• Google still has some closed-source applications
running on top (such as GPS navigation and the
application store)
• Manufacturers are open to make their own adjustments
to the OS without the requirement of publishing them as
open source
Android System Architecture
Third Party Software
• Android spawns a Dalvik virtual machine for each application,
including third party ones
• This enables strong control of the application’s behaviour and
also helps with misbehaving applications
• Multi-tasking is available
• An application framework provides a vast range of
components that can be used in the applications
• Third parties can also install additional components that can
be used in other software
• Signing is mandatory for distribution of the applications (selfsigning is possible too)
• Android Market is available quite openly ($25 one-time fee
plus a 30% royalty for Google)
Android Development
• Java based, but is not compliant with J2ME (Micro
Edition) or J2SE (Standard Edition)
• Hardware features are available through Java APIs
• SDK is available on Windows, OS X and Linux
• The SDK includes an emulator for different Android
device versions (up to 2.1 currently)
• Plug-in (Android Development Tools, ADT) available for
• Debugging is easy with the plug-in
Application Framework
• View System
– Contains GUI elements, with XML-based layouts
• Content Providers
– Provides interchangeable data between applications, such as
contact lists
• Resource Manager
– Separate data storage for language files, graphics and layout data
• Notification Manager
– Allows applications to add alerts, such as status bar messages,
sound or vibration
• Activity Manager
– Controls the lifecycle of the applications
A Typical Android Application
– Java code
– At least one needs to be specified
– Each has its own view(s)
– Text strings, image files or other data
XML-based GUI
A view is one component, a view group contains many views
Several different layout options = view groups
Standardized components (buttons, input fields) = views
R class
– Generated based on the GUI and resources
Event listeners for the components created into the Activity
A menu can be added for settings, created automatically