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
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
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
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