Presentation for Android OS

20
Introducing Operating System

description

Mobile Technology

Transcript of Presentation for Android OS

Page 1: Presentation for Android OS

Introducing

Operating System

Page 2: Presentation for Android OS

What is ANDROID?

Android is a Software stack for mobile devicesthat includes an operating system, middlewareand key applications.

The Android SDK provides the tools and APIs necessary to begin developing applications on theAndroid paltform using the java programming language.

Page 3: Presentation for Android OS

What is ANDROID?

Developers can create applications for the platform using the android SDK.

Application are written using the java programminglanguage and run on DALVIK, a custom virtualMachine designed for embedded use, which runs on top of a Linux Kernel.

Page 4: Presentation for Android OS

Features• Application framework enabling reuse and replacement of components.

• Dalvik virtual machine optimized for mobile devices.

• Integrated browser based on the open source WebKit Engine.

• Optimized graphics powered by a custom 2D graphics library; 3D graphics based on the Open GL|ES 1.0 specification (hardware accelerationoptional.

• SOLite for structured data storage.

• Media supports for common audio, video and still image formats suchas (MPEG 4, H.264, MP3, AAC, AMR, JPG, PNG, GIF).

• GSM Telephony, Bluetooth, GPRS, EDGE, 3G, Wi-Fi.

Page 5: Presentation for Android OS

Android Architecture

Page 6: Presentation for Android OS

Linux Kernel

Android relies on Linux version 2.6 x for core system services.

The Kernel acts as an abstraction Layer between the hardware andthe rest of the software stack.

Linux manages variety of services such as:Security, Memory management, Process Management,Network stack and Driver model.

Page 7: Presentation for Android OS

Libraries

• Android includes a set of C/C++ libraries used by various components of the android system.

•These capabilities are exposed to developers throughthe android application framework.

• Relies on the Linux Kernel for underlying functionality.

Page 8: Presentation for Android OS

Libraries

• System C library – a BSD- derived implementation of the standard C system library , tuned for embedded Linux based Devices.

• Media Libraries – based on Packet Video’s OpenCore; the librarysupport playback and recording of many popular audio and video formatsas well as static image files, including MPEG4, H.264, MP3,AAC,AMR etc.

• Surface Manager – manages access to the display subsystem and seamlesslycomposites 2D and 3D graphic layers from multiple applications.

• LibWebCore – a modern web Browser engine which powers both the Android browser and an Embeddabale Web View.

Page 9: Presentation for Android OS

Libraries

• SGL – the underlying 2D graphics engine.

• 3D Libraries– an implementation based on OPENGL| ES 1.0 APIs ;the libraries use either hardware 3D acceleration (where available) or the included, highly optimized 3d software rasterizer.

• Free Type – bitmap and vector font rendering.

• SQLite – a powerful and lightweight relational database engine available to all applications.

Page 10: Presentation for Android OS

Resources and Assets

• Resources are the integral part of an Android application.

• In general, these are external elements that you want to includeand reference within your application like images, audio, video, text strings, themes etc.

Page 11: Presentation for Android OS

The Android Manifest File• It names the java package for the application. The package name serves as the Unique identifier for the applications.

• It determines which processes will host application components.

• It determines which permissions the application must have in order to access protected parts of the API and interact with other applications.

• It also declares the permissions that others are required to have in order to interact with the application’s components.

• It lists the Instrumentation classes that provide profiling and other information asthe application is running. These declarations are present in the manifest only whileThe application is being developed and tested; they’re removed before the applicat-ion is published.

• It declares the minimum level of the Android API that the application requires.

• It lists the libraries that the application must be linked against.

Page 12: Presentation for Android OS

Android Runtime

• Android includes a set of core libraries that provide most of the functionalityavailable 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.

• Dalvik has been written so that a device can run multiple VMs efficiently.

Page 13: Presentation for Android OS

Android Runtime

Android’s programs are written in java, using Java Oriented IDEs likeEclipse, Net-beans etc.

It just doesn’t compile the java code into java bytecode but instead Dalvik Bytecode(.dex) files.

Page 14: Presentation for Android OS

The Android Manifest XML File

• Every application must have an Android Manifest.xml file in its root directory.

• The manifest fie represents essential information about the application to the Android system, information the system must have before it can run any of the application’s code .

Page 15: Presentation for Android OS

Application Framework

• A rich and Extensible set of views that can be used to build anapplication including lists, grids, textboxes, buttons and even an Embeddable Web Browser.

• Content Providers that enable applications to access data fromother applications (such as Contacts), or to share their own data.

• A Resource Manager, provides access to non-code resourcessuch as localized strings , graphics and layout files.

Page 16: Presentation for Android OS

Application Framework

• A Notification Manager that enables all applications to display custom alerts in status bar.

• An Activity Manager that manages the Life cycle of applications

And provides a common navigation backstack.

• A Package Manager, shows all the applications installed on your device.

• Telephony Manager , for all Calls/SMS/MMS managing.

Page 17: Presentation for Android OS

Application Fundamentals

• Android’s applications are written in Java Programming Language.

• The complied java code – along with any data and resource files required by the applicationis bundled by the aap tool into an Android Package, an archive file is marked by .apk suffix.

• The File is the vehicle for distributing the application and installing it on mobile devices ; itsthe file users download to their devices. All the code in a single .apk file is considered to be one application.

• In many ways, each Android application lives in its own world :

By Default, every application runs in its own Linux Process.

Each process has its own Virtual machine (VM), so application code runs in isolationfrom the code of all other applications.

By Default, each application is assigned a unique Linux user Id Permissions are set so that the application’s files are visible only to that user, only to the application itself.

Page 18: Presentation for Android OS

Applications

Android will ship with a set of core applications including an E-mail client, SMS Program, calendar, maps, browser, contacts, and many more.

All applications are written using the java Programming Language.

Page 19: Presentation for Android OS

Thank You !

Page 20: Presentation for Android OS

Queries