Android primer

download Android primer

of 39

  • date post

    05-Sep-2014
  • Category

    Technology

  • view

    564
  • download

    0

Embed Size (px)

description

Basic Learning about Android

Transcript of Android primer

  • Compiled by intellisense ITsys Pvt LtdDr Kalpesh Parikh, Director
  • Compiled by intellisense ITsys Pvt LtdAndroid is a software stack for mobile devices that includes an operatingsystem, middleware and key applicationsWhat is Android
  • Compiled by intellisense ITsys Pvt LtdApplication framework enabling reuse and replacement of componentsDalvik virtual machine optimized for mobile devicesIntegrated browser based on the open source WebKit engineOptimized graphics powered by a custom 2D graphics library; 3D graphics based on theOpenGL ES 1.0 specification (hardware acceleration optional)SQLite for structured data storageMedia support for common audio, video, and still image formats (MPEG4, H.264, MP3, AAC,AMR, JPG, PNG, GIF)GSM Telephony (hardware dependent)Bluetooth, EDGE, 3G, and WiFi (hardware dependent)Camera, GPS, compass, and accelerometer (hardware dependent)Rich development environment including a device emulator, tools for debugging,memory and performance profiling, and a plugin for the Eclipse IDEAndroid Features
  • Compiled by intellisense ITsys Pvt LtdAndroid OS-Architecture
  • Compiled by intellisense ITsys Pvt LtdAndroid will ship with a set of core applications including an email client, SMSprogram, calendar, maps, browser, contacts, and others. All applications arewritten using the Java programming language.Applications
  • Compiled by intellisense ITsys Pvt LtdBy providing an open development platform, Android offers developers the ability to buildextremely rich and innovative applications. Developers are free to take advantage of the devicehardware, access location information, run background services, set alarms, add notifications tothe status bar, and much, much more.Developers have full access to the same framework APIs used by the core applications. Theapplication architecture is designed to simplify the reuse of components; any application canpublish its capabilities and any other application may then make use of those capabilities(subject to security constraints enforced by the framework). This same mechanism allowscomponents to be replaced by the user.Underlying all applications is a set of services and systems, including:A rich and extensible set of Views that can be used to build an application, including lists, grids,text boxes, buttons, and even an embeddable web browserContent Providers that enable applications to access data from other applications (such asContacts), or to share their own dataA Resource Manager, providing access to non-code resources such as localized strings,graphics, and layout filesA Notification Manager that enables all applications to display custom alerts in the status barAn Activity Manager that manages the lifecycle of applications and provides a commonnavigation backstackApplication Framework
  • Compiled by intellisense ITsys Pvt LtdSystem C library - a BSD-derived implementation of the standard C system library(libc), tuned for embedded Linux-based devicesMedia Libraries - based on PacketVideos OpenCORE; the libraries supportplayback and recording of many popular audio and video formats, as well as staticimage files, including MPEG4, H.264, MP3, AAC, AMR, JPG, and PNGSurface Manager - manages access to the display subsystem and seamlesslycomposites 2D and 3D graphic layers from multiple applicationsLibWebCore - a modern web browser engine which powers both the Androidbrowser and an embeddable web viewSGL - the underlying 2D graphics engine3D libraries - an implementation based on OpenGL ES 1.0 APIs; the libraries useeither hardware 3D acceleration (where available) or the included, highly optimized3D software rasterizerFreeType - bitmap and vector font renderingSQLite - a powerful and lightweight relational database engine available to allapplicationsCore Libraries
  • Compiled by intellisense ITsys Pvt LtdAndroid includes a set of core libraries that provides 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 Dalvikvirtual machine.Dalvik has been written so that a device can run multiple VMs efficiently.The Dalvik VM executes files in the Dalvik Executable (.dex) format which isoptimized for minimal memory footprint.The VM is register-based, and runs classes compiled by a Java language compilerthat have been transformed into the .dex format by the included "dx" tool.The Dalvik VM relies on the Linux kernel for underlying functionality such asthreading and low-level memory management.Linux KernelAndroid relies on Linux version 2.6 for core system services such as security,memory management, process management, network stack, and driver model. Thekernel also acts as an abstraction layer between the hardware and the rest of thesoftware stack.Android Runtime
  • Compiled by intellisense ITsys Pvt Ltdhttp://developer.android.com/guide/tutorials/hello-world.htmlProcess Life Cycle
  • Compiled by intellisense ITsys Pvt LtdBASIC Terminologies.apk fileAndroid application package file..dex fileCompiled Android application code file.ActionA description of something that an Intent sender wants done. An action is a stringvalue assigned to an Intent.ActivityA single screen in an application, with supporting Java code, derived from the Activityclass. Most commonly, an activity is visibly represented by a full screen window thatcan receive and handle UI events and perform complex tasks, because of theWindow it uses to render its window. Though an Activity is typically full screen, it canalso be floating or transparent.adbAndroid Debug Bridge
  • Compiled by intellisense ITsys Pvt LtdApplicationAn Android application consists of one or more activities, services, listeners, andintent receivers.CanvasA drawing surface that handles compositing of the actual bits against a Bitmap orSurface object.Content ProviderA data-abstraction layer that you can use to safely expose your applications datato other applications.DalvikThe Android platforms virtual machine. The Dalvik VM is an interpreter-only virtualmachine that executes files in the Dalvik Executable (.dex) formatDDMSDalvik Debug Monitor ServiceDialogA floating window that that acts as a lightweight form.BASIC Terminologies
  • Compiled by intellisense ITsys Pvt LtdDrawableA compiled visual resource that can be used as a background, title, or other partof the screenIntentAn message object that you can use to launch or communicate with otherapplications/activities asynchronously.Intent FilterA filter object that an application declares in its manifest file, to tell the systemwhat types of Intents each of its components is willing to accept and with whatcriteria.Broadcast ReceiverAn application class that listens for Intents that are broadcast, rather than beingsent to a single target application/activity.Layout ResourceAn XML file that describes the layout of an Activity screen.BASIC Terminologies
  • Compiled by intellisense ITsys Pvt LtdManifest FileAn XML file that each application must define, to describe the applications packagename, version, components (activities, intent filters, services), imported libraries,and describes the various activities, and so on. See The AndroidManifest.xml Filefor complete information.OpenGL ESAndroid provides OpenGL ES libraries that you can use for fast, complex 3Dimages.ResourcesNonprogrammatic application components that are external to the compiledapplication code, but which can be loaded from application code using a well-known reference format.ServiceAn object of class Service that runs in the background (without any UI presence) toperform various persistent actions, such as playing music or monitoring networkactivity.BASIC Terminologies
  • Compiled by intellisense ITsys Pvt LtdSurfaceA Surface holds a Canvas object for drawing, and provides various helpermethods to draw layers and resize the surface.SurfaceViewA View object that wraps a Surface for drawing, and exposes methods to specifyits size and format dynamically.ThemeA set of properties (text size, background color, and so on) bundled together todefine various default display settings.URIs in AndroidAndroid uses URI strings as the basis for requesting data in a content provider(such as to retrieve a list of contacts) and for requesting actions in an Intent(such as opening a Web page in a browser).ViewA View is a base class for most layout components of an Activity or Dialogscreen (text boxes, windows, and so on).BASIC Terminologies
  • Compiled by intellisense ITsys Pvt LtdViewgroupA container object that groups a set of child Views.Widget :View subclasses that render form elements and other UI components, such asa text box or popup menu.BASIC Terminologies
  • Compiled by intellisense ITsys Pvt LtdANDROID Software Stack
  • Compiled by intellisense ITsys Pvt LtdANDROID Programming Framework
  • Compiled