SlideShare a Scribd company logo
1 of 45
Introduction
to 
Android
Some of the popular operating systems used in
mobile gadgets are given below.
1. Symbian Nokia
Windows Phone
2. iOS Apple
3. Blackberry O.S Blackberry
4. Android Many Handset
manufacturers
“Android is a software stack for mobile
devices that includes an operating system,
middleware and key applications”
“We want the next killer application to be written for
cell phones”
- Andy Rubin, Google
• Multiple applications, running simultaneously
• User may switch between running applications
• Background services
• Supports three Orientations
• Has access to wi-fi, phone state, audio settings, external
memory access.
 Android Market
 Self-publish on your own web site
 Use a 3rd party application store
• $25 registration fee for developers
• developer receives 70% of each sale
• remaining amount goes to carriers
• Google does not take a percentage
• http://www.android.com/market/
• Market got you down?
• upload APK to your own web server
• http://icecondor.com/download/icecondor-2008-10-26.
• use correct MIME type
application/vnd.android.package-archive
<------Android enabled Car Stereo
Extras
 Android relies on Linux version 2.6 for core system
services, acts as a layer between hardware and
software.
Manages the following;
 Security
 Memory management
 Process management
 Network stack
 Driver model
 Not a Java VM
 Design constraints: slow CPU, little RAM
 Will run on OS without swap space
 On compiling .class files will be changed to .dex format
 The .dex format runs on the Dalvik platform.
A set of C/C++ libraries used by various components of the
Android system.
Some of the core libraries are listed below:
• System C library - an implementation of the standard C system
library (libc), tuned for embedded Linux-based devices
• Media Libraries - the libraries support playback and recording of
many popular audio, video and image formats .
• Surface Manager - manages access to the display subsystem
and seamlessly composites 2D and 3D graphic
• LibWebCore - a modern web browser engine which powers both
the Android browser and an embeddable web view
• SGL - the underlying 2D graphics engine
• FreeType - bitmap and vector font rendering
• SQLite - a powerful and lightweight relational database
engine available to all applications
• Activity Manager : Maintains the activities/screens of the applications
that are displayed
• Window Manager: Co-ordinates the orientation of phone, sensors etc.
• Content : Manages the data to be transferred between
Manager Activities / screens
• View System : Controls the various layouts, button
and UI level objects
• Notification : Deals with the display of AlertBox, Toast msgs.
Manager
• Telephony : Handles the process like call, sms, mms etc.
Manager
• Location : Uses Google Maps to access location related info
Manager
It supports wireless communications using
GSM mobile-phone technology
3G
802.11 Wi-Fi networks
Integrated Browser
UI
 android.widget.*
 android.view.*
 android.graphics.*
 android.app.Activity etc
PhoneState
 android.content.res.Configuration
 android.hardware.Sensor
 android.net.wifi.WifiManager
Telephony
android.telephony.TelephonyManager
android.telephony.SmsManager
 Web android.webkit.WebView
 Camera android.hardware.CameraDevice
 Local database android.database.*
 Maps com.google.android.maps.MapView
 Location android.location.LocationManager
 Multimedia android.media.MediaPlayer
 HTTP org.apache.http.client.*
• API Level is an integer value that uniquely identifies the
framework API revision offered by a version of the
Android platform:
Android 2.3
(Gingerbread)
9/10
Android 2.2
(Froyo)
8
Android 2.0/2.1
(Eclair)
7
Android 1.6
(Donut)
4
Android 1.5
(Cupcake)
3
 Android SDK
 Eclipse plugin 
 Android emulator
 Command line tools
 Documentation
 Debugging tools
 Android NDK
 Android PDK
Essential for the development of applications on android environment.
Consists of the emulator, documentation, debugging tools and command line
Also requires ADT plugin for merging with eclipse.
Steps you must follow to set up the Android SDK:
• Prepare your development computer and ensure it meets the
system requirements.
• Install the SDK starter package from the table above. (If you're on
Windows, download the installer for help with the initial setup.)
• Install the ADT plugin for Eclipse (if you'll be developing in Eclipse).
• Add Android platforms and other components to your SDK.
Installers available at :
http://developer.android.com/sdk/index.html,
http://
developer.android.com/sdk/eclipse-adt.html#installing
NDK is a companion tool to the Android SDK that lets you
build performance-critical portions of your apps in native
code.
The NDK provides:
• A set of tools and build files used to generate native
code libraries from C and C++ sources
• A way to embed the corresponding native libraries into
application packages files (.apks) that can be deployed on
Android devices
• A set of native system headers and libraries that will be
supported in all future releases of the Android platform.
Some of the needed Android source code packages
available in  http://android.git.kernel.org/ are:
1)Android.platform.bionic,
2)Android.platform.build,
3)Android.platform.system.core, and
4)Android.platform.system.base.
• Designed for platform developers and manufacturers building
Android-powered devices.
• Manages the porting of android operating system into a device
that matches requirements
• Allows the developer to alter based on their device
Following are the main steps for porting Android:
 Download the patches for Android
 Update RIL (Radio Interface Library) for target platform
 Update Board specific components such as Codec, Camera,
Audio, Wifi, Power Management, Bluetooth etc.
 Compile Android source code
 Burn system image on Target platform
adb push <packagename.apk> /system/app/ ----------put in system folder
adb devices – ----lists which devices are currently attached to your computer
adb install <packagename.apk> – lets you install an Android application on your phone
adb remount – Remounts your system in write mode – this lets you alter system files on
your phone using ADB
adb push <localfile> <location on your phone> – lets you upload files to your phones
filesystem
adb pull <location on your phone> <localfile> – lets you download files off your phones
filesystem
adb logcat – starts dumping log from the console to a local file – useful for debugging apps
adb shell <command> – drops you into a basic linux command shell on
your phone with no parameters, or lets you run commands directly
adb devices – lists which devices are currently attached to your computer
• No support for placing or receiving actual phone calls
• No support for camera/video capture (input)
• No support for determining battery charge level
• Emulator limitations
• No support for Bluetooth
• An .apk file extension denotes
an Android Package (APK) file.
• A variant of the JAR format, is used for the
distribution and installation of bundled
components onto the Android mobile device
platform.
• An APK file is an archive that usually
contains the following folders:
META-INF
res
and files:
AndroidManifest.xml
classes.dex
resources.arsc
 Java code
Dynamic creation of UI
e.g:
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);
 ImageButton imgBtn = new ImageButton(this);
LinearLayout holder = new LinearLayout(this);
holder.addView(imgBtn);  
alt_bld.setView(holder);
alt_bld.show()
 XML
UI creation before the creation of apk
The
Thank
You

More Related Content

What's hot

Project proposal android operating system
Project proposal android operating systemProject proposal android operating system
Project proposal android operating systemAttiq12
 
Android Programming Seminar
Android Programming SeminarAndroid Programming Seminar
Android Programming SeminarNhat Nguyen
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
FTF2014 - Android Accessory Protocol
FTF2014 - Android Accessory ProtocolFTF2014 - Android Accessory Protocol
FTF2014 - Android Accessory ProtocolGary Bisson
 
Basic of Android App Development
Basic of Android App DevelopmentBasic of Android App Development
Basic of Android App DevelopmentAbhijeet Gupta
 
Windows Phone 7 Architecture Overview
Windows Phone 7 Architecture OverviewWindows Phone 7 Architecture Overview
Windows Phone 7 Architecture OverviewBhavya Siddappa
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introductionHGanesh
 
Android Design Architecture
Android Design ArchitectureAndroid Design Architecture
Android Design ArchitectureRakesh Jha
 
Lec004 setting up for development
Lec004   setting up for developmentLec004   setting up for development
Lec004 setting up for developmentEyad Almasri
 
Android basic principles
Android basic principlesAndroid basic principles
Android basic principlesHenk Laracker
 

What's hot (14)

Project proposal android operating system
Project proposal android operating systemProject proposal android operating system
Project proposal android operating system
 
Android Programming Seminar
Android Programming SeminarAndroid Programming Seminar
Android Programming Seminar
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
FTF2014 - Android Accessory Protocol
FTF2014 - Android Accessory ProtocolFTF2014 - Android Accessory Protocol
FTF2014 - Android Accessory Protocol
 
Wifi sharing
Wifi sharingWifi sharing
Wifi sharing
 
Basic of Android App Development
Basic of Android App DevelopmentBasic of Android App Development
Basic of Android App Development
 
Windows Phone 7 Architecture Overview
Windows Phone 7 Architecture OverviewWindows Phone 7 Architecture Overview
Windows Phone 7 Architecture Overview
 
Selenium introduction
Selenium introductionSelenium introduction
Selenium introduction
 
Android Design Architecture
Android Design ArchitectureAndroid Design Architecture
Android Design Architecture
 
Lec004 setting up for development
Lec004   setting up for developmentLec004   setting up for development
Lec004 setting up for development
 
Google android os
Google android osGoogle android os
Google android os
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Android basic principles
Android basic principlesAndroid basic principles
Android basic principles
 
Andriod
Andriod Andriod
Andriod
 

Viewers also liked (8)

Hardware Interface in Android (in tamil)
Hardware Interface in Android (in tamil)Hardware Interface in Android (in tamil)
Hardware Interface in Android (in tamil)
 
Create and Sell Android App (in tamil)
Create and Sell Android App (in tamil)Create and Sell Android App (in tamil)
Create and Sell Android App (in tamil)
 
Android app - Creating Live Wallpaper (tamil)
Android app - Creating Live Wallpaper (tamil)Android app - Creating Live Wallpaper (tamil)
Android app - Creating Live Wallpaper (tamil)
 
Creating Sample Android App (in tamil)
Creating Sample Android App (in tamil)Creating Sample Android App (in tamil)
Creating Sample Android App (in tamil)
 
Android telephony stack
Android telephony stackAndroid telephony stack
Android telephony stack
 
Android Telephony Manager and SMS
Android Telephony Manager and SMSAndroid Telephony Manager and SMS
Android Telephony Manager and SMS
 
RIL and Android Telephony
RIL and Android TelephonyRIL and Android Telephony
RIL and Android Telephony
 
Android Tips (Tamil)
Android Tips (Tamil)Android Tips (Tamil)
Android Tips (Tamil)
 

Similar to Android zensar

Similar to Android zensar (20)

Introduction to android sessions new
Introduction to android   sessions newIntroduction to android   sessions new
Introduction to android sessions new
 
3. Android Architecture.pptx
3. Android Architecture.pptx3. Android Architecture.pptx
3. Android Architecture.pptx
 
Introduction to android
Introduction to androidIntroduction to android
Introduction to android
 
Android technology
Android technology Android technology
Android technology
 
Android OS
Android OSAndroid OS
Android OS
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Developing for Android-Types of Android Application
Developing for Android-Types of Android ApplicationDeveloping for Android-Types of Android Application
Developing for Android-Types of Android Application
 
Lick my Lollipop
Lick my LollipopLick my Lollipop
Lick my Lollipop
 
Google android os
Google android osGoogle android os
Google android os
 
Android Security Humla Part 1
Android Security Humla Part 1Android Security Humla Part 1
Android Security Humla Part 1
 
My androidpresentation
My androidpresentationMy androidpresentation
My androidpresentation
 
Android
AndroidAndroid
Android
 
Android Lollipop
Android LollipopAndroid Lollipop
Android Lollipop
 
An introduction to Android
An introduction to AndroidAn introduction to Android
An introduction to Android
 
Android Applications
Android ApplicationsAndroid Applications
Android Applications
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Android ppt
Android ppt Android ppt
Android ppt
 
Android Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdfAndroid Seminar BY Suleman Khan.pdf
Android Seminar BY Suleman Khan.pdf
 
Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01Androidoverview 100405150711-phpapp01
Androidoverview 100405150711-phpapp01
 
128-ch4.pptx
128-ch4.pptx128-ch4.pptx
128-ch4.pptx
 

More from Dr. Ramkumar Lakshminarayanan

Using many languages in single Android App (in tamil)
Using many languages in single Android App (in tamil)Using many languages in single Android App (in tamil)
Using many languages in single Android App (in tamil)Dr. Ramkumar Lakshminarayanan
 

More from Dr. Ramkumar Lakshminarayanan (20)

IT security awareness
IT security awarenessIT security awareness
IT security awareness
 
Basics of IT security
Basics of IT securityBasics of IT security
Basics of IT security
 
IT Security Awareness Posters
IT Security Awareness PostersIT Security Awareness Posters
IT Security Awareness Posters
 
Normalisation revision
Normalisation revisionNormalisation revision
Normalisation revision
 
Windows mobile programming
Windows mobile programmingWindows mobile programming
Windows mobile programming
 
Concurrency control
Concurrency controlConcurrency control
Concurrency control
 
Web technology today
Web technology todayWeb technology today
Web technology today
 
Php Tutorial
Php TutorialPhp Tutorial
Php Tutorial
 
Phonegap for Android
Phonegap for AndroidPhonegap for Android
Phonegap for Android
 
Android Animation (in tamil)
Android Animation (in tamil)Android Animation (in tamil)
Android Animation (in tamil)
 
Creating List in Android App (in tamil)
Creating List in Android App (in tamil)Creating List in Android App (in tamil)
Creating List in Android App (in tamil)
 
Single Touch event view in Android (in tamil)
Single Touch event view in Android (in tamil)Single Touch event view in Android (in tamil)
Single Touch event view in Android (in tamil)
 
Android Application using seekbar (in tamil)
Android Application using seekbar (in tamil)Android Application using seekbar (in tamil)
Android Application using seekbar (in tamil)
 
Rating Bar in Android Example
Rating Bar in Android ExampleRating Bar in Android Example
Rating Bar in Android Example
 
Creating Image Gallery - Android app (in tamil)
Creating Image Gallery - Android app (in tamil)Creating Image Gallery - Android app (in tamil)
Creating Image Gallery - Android app (in tamil)
 
Create Android App using web view (in tamil)
Create Android App using web view (in tamil)Create Android App using web view (in tamil)
Create Android App using web view (in tamil)
 
GPS in Android (in tamil)
GPS in Android (in tamil)GPS in Android (in tamil)
GPS in Android (in tamil)
 
Using many languages in single Android App (in tamil)
Using many languages in single Android App (in tamil)Using many languages in single Android App (in tamil)
Using many languages in single Android App (in tamil)
 
SQLite in Android App (in tamil)
SQLite in Android App (in tamil)SQLite in Android App (in tamil)
SQLite in Android App (in tamil)
 
Shared Preference in Android App
Shared Preference in Android AppShared Preference in Android App
Shared Preference in Android App
 

Android zensar

  • 2. Some of the popular operating systems used in mobile gadgets are given below. 1. Symbian Nokia Windows Phone 2. iOS Apple 3. Blackberry O.S Blackberry 4. Android Many Handset manufacturers
  • 3. “Android is a software stack for mobile devices that includes an operating system, middleware and key applications”
  • 4. “We want the next killer application to be written for cell phones” - Andy Rubin, Google
  • 5. • Multiple applications, running simultaneously • User may switch between running applications • Background services • Supports three Orientations • Has access to wi-fi, phone state, audio settings, external memory access.
  • 6.
  • 7.  Android Market  Self-publish on your own web site  Use a 3rd party application store
  • 8.
  • 9. • $25 registration fee for developers • developer receives 70% of each sale • remaining amount goes to carriers • Google does not take a percentage • http://www.android.com/market/
  • 10. • Market got you down? • upload APK to your own web server • http://icecondor.com/download/icecondor-2008-10-26. • use correct MIME type application/vnd.android.package-archive
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. <------Android enabled Car Stereo Extras
  • 22.
  • 23.  Android relies on Linux version 2.6 for core system services, acts as a layer between hardware and software. Manages the following;  Security  Memory management  Process management  Network stack  Driver model
  • 24.  Not a Java VM  Design constraints: slow CPU, little RAM  Will run on OS without swap space  On compiling .class files will be changed to .dex format  The .dex format runs on the Dalvik platform.
  • 25. A set of C/C++ libraries used by various components of the Android system. Some of the core libraries are listed below: • System C library - an implementation of the standard C system library (libc), tuned for embedded Linux-based devices • Media Libraries - the libraries support playback and recording of many popular audio, video and image formats . • Surface Manager - manages access to the display subsystem and seamlessly composites 2D and 3D graphic • LibWebCore - a modern web browser engine which powers both the Android browser and an embeddable web view • SGL - the underlying 2D graphics engine • FreeType - bitmap and vector font rendering • SQLite - a powerful and lightweight relational database engine available to all applications
  • 26. • Activity Manager : Maintains the activities/screens of the applications that are displayed • Window Manager: Co-ordinates the orientation of phone, sensors etc. • Content : Manages the data to be transferred between Manager Activities / screens • View System : Controls the various layouts, button and UI level objects • Notification : Deals with the display of AlertBox, Toast msgs. Manager • Telephony : Handles the process like call, sms, mms etc. Manager • Location : Uses Google Maps to access location related info Manager
  • 27. It supports wireless communications using GSM mobile-phone technology 3G 802.11 Wi-Fi networks Integrated Browser
  • 28. UI  android.widget.*  android.view.*  android.graphics.*  android.app.Activity etc PhoneState  android.content.res.Configuration  android.hardware.Sensor  android.net.wifi.WifiManager Telephony android.telephony.TelephonyManager android.telephony.SmsManager
  • 29.  Web android.webkit.WebView  Camera android.hardware.CameraDevice  Local database android.database.*  Maps com.google.android.maps.MapView  Location android.location.LocationManager  Multimedia android.media.MediaPlayer  HTTP org.apache.http.client.*
  • 30. • API Level is an integer value that uniquely identifies the framework API revision offered by a version of the Android platform: Android 2.3 (Gingerbread) 9/10 Android 2.2 (Froyo) 8 Android 2.0/2.1 (Eclair) 7 Android 1.6 (Donut) 4 Android 1.5 (Cupcake) 3
  • 31.  Android SDK  Eclipse plugin   Android emulator  Command line tools  Documentation  Debugging tools  Android NDK  Android PDK
  • 32. Essential for the development of applications on android environment. Consists of the emulator, documentation, debugging tools and command line Also requires ADT plugin for merging with eclipse. Steps you must follow to set up the Android SDK: • Prepare your development computer and ensure it meets the system requirements. • Install the SDK starter package from the table above. (If you're on Windows, download the installer for help with the initial setup.) • Install the ADT plugin for Eclipse (if you'll be developing in Eclipse). • Add Android platforms and other components to your SDK. Installers available at : http://developer.android.com/sdk/index.html, http:// developer.android.com/sdk/eclipse-adt.html#installing
  • 33. NDK is a companion tool to the Android SDK that lets you build performance-critical portions of your apps in native code. The NDK provides: • A set of tools and build files used to generate native code libraries from C and C++ sources • A way to embed the corresponding native libraries into application packages files (.apks) that can be deployed on Android devices • A set of native system headers and libraries that will be supported in all future releases of the Android platform. Some of the needed Android source code packages available in  http://android.git.kernel.org/ are: 1)Android.platform.bionic, 2)Android.platform.build, 3)Android.platform.system.core, and 4)Android.platform.system.base.
  • 34. • Designed for platform developers and manufacturers building Android-powered devices. • Manages the porting of android operating system into a device that matches requirements • Allows the developer to alter based on their device Following are the main steps for porting Android:  Download the patches for Android  Update RIL (Radio Interface Library) for target platform  Update Board specific components such as Codec, Camera, Audio, Wifi, Power Management, Bluetooth etc.  Compile Android source code  Burn system image on Target platform
  • 35.
  • 36.
  • 37.
  • 38. adb push <packagename.apk> /system/app/ ----------put in system folder adb devices – ----lists which devices are currently attached to your computer adb install <packagename.apk> – lets you install an Android application on your phone adb remount – Remounts your system in write mode – this lets you alter system files on your phone using ADB adb push <localfile> <location on your phone> – lets you upload files to your phones filesystem adb pull <location on your phone> <localfile> – lets you download files off your phones filesystem adb logcat – starts dumping log from the console to a local file – useful for debugging apps adb shell <command> – drops you into a basic linux command shell on your phone with no parameters, or lets you run commands directly adb devices – lists which devices are currently attached to your computer
  • 39.
  • 40. • No support for placing or receiving actual phone calls • No support for camera/video capture (input) • No support for determining battery charge level • Emulator limitations • No support for Bluetooth
  • 41.
  • 42. • An .apk file extension denotes an Android Package (APK) file. • A variant of the JAR format, is used for the distribution and installation of bundled components onto the Android mobile device platform. • An APK file is an archive that usually contains the following folders: META-INF res and files: AndroidManifest.xml classes.dex resources.arsc
  • 43.  Java code Dynamic creation of UI e.g: AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);  ImageButton imgBtn = new ImageButton(this); LinearLayout holder = new LinearLayout(this); holder.addView(imgBtn);   alt_bld.setView(holder); alt_bld.show()  XML UI creation before the creation of apk
  • 44.