Android Application Development

Only available on StudyMode
  • Topic: Android, Google, Dalvik virtual machine
  • Pages : 10 (1582 words )
  • Download(s) : 37
  • Published : May 14, 2013
Open Document
Text Preview
Downloaded from FaaDoOEngineers.com

Introduction
Android is an operating system for mobile devices such as cellular phones, tablet computers and netbooks.  It was initially developed by Android Inc. which was later purchased by Google.  Google further formed the open handset alliance 

Downloaded from FaaDoOEngineers.com

Open Handset Alliance
o The Open Handset Alliance (OHA) is a business alliance of 78 firms for developing open standards for mobile devices

o Technically the term “ OPEN STANDARDS “ refers to a specification whose description is freely available .

oThis means that developers are free to create applications which are valid according to the specification and which will therefore work with software designed for it.

Downloaded from FaaDoOEngineers.com

Some major names in OHA
HTC  SAMSUNG ELECTRONICS  MOTOROLA  GOOGLE  NVIDIA ELECTRONICS  INTEL CORP  EBAY  SONY ERRICSON 

Downloaded from FaaDoOEngineers.com

Android is open source.
The source code of the android os is freely available to anyone.  Being an open source it has the following advantages 
○ Support ○ Cost ○ Flexibility

Downloaded from FaaDoOEngineers.com

ANDROID ARCHITECTURE

Downloaded from FaaDoOEngineers.com

LINUX KERNEL


Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack.

Downloaded from FaaDoOEngineers.com

ANDROID LIBRARIES
Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language.  Every Android application runs in its own process, with its own instance of the Dalvik virtual machine.  The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management. 

Downloaded from FaaDoOEngineers.com

LIBRARIES
System C library Media Libraries

…1
• A BSD-derived implementation of the standard C system library (libc), tuned for embedded Linuxbased devices

• It is based on Packet Video’s Open CORE; the libraries support playback and recording of many popular audio and video formats, as well as static image files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNG

Surface Manager

• Manages access to the display subsystem and seamlessly composites 2D and 3D graphic layers from multiple applications

Downloaded from FaaDoOEngineers.com

LIBRARIES
LibWebCore

…2
• A modern web browser engine which powers both the Android browser and an embeddable web view

SGL
3D libraries Free Type

• The underlying 2D graphics engine

• An implementation based on OpenGL ES 1.0 APIs

• Bitmap and vector font rendering

SQLite

• A powerful and lightweight relational database engine available to all applications

Downloaded from FaaDoOEngineers.com

APPLICATIONS


This is where we find the basic functions of the device such as making phone calls, accessing the Web browser and accessing contacts list ,etc Android will ship with a set of core applications including an email client, SMS program, calendar, maps, browser, contacts, and others. All applications are written using the Java programming language. Downloaded from FaaDoOEngineers.com

Dalvik Virtual Machine
The Dalvik VM takes the generated Java class files and combines them into one or more Dalvik Executable (.dex) files.  It reuses duplicate information from multiple class files, effectively reducing the space requirement (uncompressed) by half from a traditional .jar file.  For example, the .dex file of the web browser app in Android is about 200K, whereas the equivalent uncompressed .jar version is about 500K. 

Downloaded from FaaDoOEngineers.com

Second, Google has fine-tuned the garbage collection in the Dalvik VM.  Finally, the Dalvik VM uses a...
tracking img