Getting started with android


Published on

First session ppt for TYBSC Android Course

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Getting started with android

  1. 1. Getting Started With Android
  2. 2. History of Android In 2007, a group of manufacturers, wireless carriers & software developers formed the “Open Handset Alliance” Some of these include  Broadcom Corporation  HTC  Intel  LG  Motorola  Samsung  T-Mobile  Google
  3. 3. History of Android The goal was to develop the next generation of wireless platform The new platform would be nonproprietary & based on open standards This would lead to lower development costs & increases profits RIM Blackberry & Apple iOS were proprietary platforms, so the mobile development community eagerly waited for this new potential platform In 2008, the OHA announces the Android platform and launched a beta program for developers.
  4. 4. History of Android Several pre-release versions of the Android SDK were released The first Android handset (T-Mobile G1) began shipping in late 2008
  5. 5. History of Android Almost all major manufacturers have Android based handsets The following companies do not have Android Phones  Apple  RIM  Nokia
  6. 6. Easy Development Android breaks the proprietary concept of mobile development Unlike with other mobile platforms, there are virtually no costs to developing Android Applications The Android SDK and tools are freely available on the Android developer website The freely available Eclipse is the most popular IDE for Android Development So basically the setup itself is very cheap
  7. 7. Easy Development The best part is the development language Android applications are written in Java Language Java being the popular language among the developer community The learning curve for developers is quite less since they already know Java The main thing that they have to understand is the SDK and Tools for development
  8. 8. Some pre-requisites for Android Java Language XML Eclipse IDE SDK
  9. 9. What is Android? Android is a software stack for mobile devices that includes  an operating system  Middleware  key applications The Android SDK provides the tools and APIs necessary to begin developing applications.
  10. 10. Features of Android 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 OpenGL ES 1.0 specification (hardware acceleration optional) SQLite for structured data storage
  11. 11. Features of Android Media 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 IDE
  12. 12. Android Architecture
  13. 13. Applications Android provides 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.
  14. 14. Application Framework Android offers developers the ability to build extremely rich and innovative applications. Developers are free to take advantage of the  device hardware,  access location information,  run background services,  set alarms,  add notifications to the status bar & much more Developers have full access to the same framework APIs used by the core applications
  15. 15. Application Framework The application architecture is designed to simplify the reuse of components Any application can publish its capabilities and any other application may then make use of those capabilities This same mechanism allows components to be replaced by the user
  16. 16. Application Framework 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 browser  Content Providers that enable applications to access data from other applications (such as Contacts), or to share their own data  A Resource Manager, providing access to non- code resources such as localized strings, graphics, and layout files  A Notification Manager that enables all applications to display custom alerts in the status bar
  17. 17. Libraries Android includes a set of libraries used by various components of the Android system. These capabilities are exposed to developers through the Android application framework. Some of the core libraries are listed below:  Media Libraries - 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  LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view  3D libraries - an implementation based on OpenGL ES 1.0 APIs;  FreeType - bitmap and vector font rendering
  18. 18. Android Runtime Every Android application runs in its own process, with its own instance of the Dalvik virtual machine (DVM) Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files which are optimized for minimal memory footprint. The Dalvik VM relies on the Linux kernel for underlying functionality such as threading and low-level memory management.
  19. 19. 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
  20. 20. Android Development ToolsPlugin ADT Plugin is available for Eclipse It provides the following:-  Android project wizard  Android specific resource editors  Android SDK & AVD (Android Virtual Device) Manager  DDMS (Dalvik Debug Monitor Service) perspective for debugging/monitoring apps  Integration with Android LogCat Logging  Automated builds & application deployment to Android emulators and handsets  Application packaging and code signing tools for release deployment
  21. 21. Eclipse ? Is Eclipse Necessary for development?  NO Developers can develop Android apps without using the Eclipse IDE However by doing so, they are missing the ease of development that Eclipse provides
  22. 22. Remember… When developing any mobile application, always remember:  Screen Size is small  Processing power is less  Resources should be managed properly