MSBTE CAMPUS ACADEMY
Ch1. Android and its tools
Chapter 1: Android and its tools
What is Android?
1. Android is a stack of software for mobile devices that are an operating system,
middleware and applications
2. Android is Linux based operating system which is designed for touchscreen mobile
devices like smartphones and tablet computers.
3. It is an open source technology that allows the software to be freely modified ad
distributed by device manufacturers, wireless carriers and developers.
4. Android was unveiled during 2007 along with the founding of the Open Handset
Alliance.
Open Handset Alliance
1. Open Handset Alliance was formed in November 2007. It was created by Google.
2. The OHA is a group that is in charge of the Android smartphones operating system
3. The Open Handset Alliance is a business alliance that consists of 47 companies for
developing open standard platform for mobile devices
4. The members of OHA include handset manufacturers, chip makers, commercialization
companies, software companies and mobile operators.
Ch1. Android and its tools
Android Ecosystem
To learn about Android and develop Android application, we need to understand the
entire Android ecosystem. It includes the Google, OEM, Consumers, Freelancers and
Application development centers. The stakeholders are the consumers that own Android devices
but there are others as following:
1. Google: it is the main component of android ecosystem. It develops Android.
2. OEMs (Original Equipment Manufacturers): they manufacturer the hardware, and as well
the custom application components.
3. Application Development Companies: they are the major contributors to the ecosystem
and employ Android developers, and also contract out the product development to
services companies
4. Freelance Android developers: developers have the skill set to contribute to the
ecosystem for Android development, they are who create their own applications, and
publish them on Google playstore. Freelancers can also generate money by developing
applications for product companies.
Need for Android
1. Browser: the android browser is one of the best browsers on mobile market. It generally
loads page faster than Safari or any other browser, has flash support and simply does
everything a browser should do.
2. Desktop: the android phone adds widgets to the desktop. The widgets allows you to
make possible different actions right from your desktop.
3. Connectivity: Android has four connecting device tool button namely, Bluetooth, WiFi,
mobile network and GPS. These buttons let you switch on/off instantly which will help
to conserve battery life.
4. Multi-notification: Android phones have multi-notification system. With android, the
app have access to the notification system and call all report.
5. Endless personalization: the Android cell phones allows client to configure their mobile
to look and behave exactly like they want
6. Market: Android has an android market (playstore). The Android apps are free and work
as well.
Ch1. Android and its tools
7. Google integration: the Android has in-built google support which includes various
google supported apps.
8. Open source: the code of android OS as well as the apps are available for everyone.
Features of Android
1. Open source: Android is an open source operating system. Anyone can work on the
operating system, not only one company developers. Therefore app developers for
Android devices are able to implement extra features of their apps, due to the access they
have to contain the source code.
2. Storage: SQLite, a lightweight relational database, is used for data storage purposes.
3. Media support: Android supports various audio, video, still media formats like images
etc.
4. Streaming media support:
5. Multi-touch: Android has native support for multi-touch which was initially made
available in handsets such as the HTC hero. These features were originally disable at the
Linux kernel. Google has released an update version which enable multi-touch natively.
6. Video-calling: Android does not support local video calling, but several handsets have a
customized version of the operating system that supports it, either through UTMS
network or ended IP. Video calling through Google Talk is available within Android
2.3.4 and later. Users with Google+ android app can video chat with other google+ users
through hangouts.
7. Multitasking: multitasking of application, with unique handling of memory allocation,
will be existing
8. Accessibility: built in text to speed is provided by Talk back for people with low or no
vision. Enhancements for people through hearing disabilities are available as is other aids
9. Voice based features: Google search through voice has been available since operating
release. Voice activities for navigation, calling, texting, etc. are supported on Android 2.2
forwards.
10. External storage: most android devices include microSD slot and can read microSD cards
formatted with Fat32, Ext3 or Exr4 file system. To allow use of high-capacity storage
media such as USB flash drives and USB HDD’s, many Android tablets also include
USB ‘A’ receptacle.
Tools and Software required for developing Android application
The tools can be generally categorized into two types.
• SDK tools-android, emulator, sqlite3
• Platform tools- Android Debug bridge (ADB), Android Interface definition language
(AIDL)
Ch1. Android and its tools
Android Architecture
1. The Android OS can be referred to as a software stack of different layers, where every
layer is a group of several program components.
2. It includes operating systems, middleware and important application. Every layer
provides different services.
3. Mostly Android has the following layers: Applications, Application framework,
Libraries, Android runtime, Linux kernel.
Applications: All applications in the application layer are written using Java language. The
various core application that an Android device provides include; Email client, SMS program,
Maps, Browser, Calendar, Contacts, etc.
Application Framework: provides many higher-level services to applications in the form of Java
classes.
Activity Manager − Controls all aspects of the application lifecycle and activity stack.
Window Manger- organizes the screen layout
View System- views the window
Content Providers − share data with other applications.
Resource Manager − downloads some other applications which is not own
Notifications Manager − to display alerts and notifications to the user.
Telephone Manager- to handle the receiver call or voice call
Location manager- locate the mobile device Ex- GPS
XMPP Service Manager- service like music ,ringtone, browser
Ch1. Android and its tools
Libraries: this layer communicated with application framework. Communication happens
through java native interface
Surface Manger- 1.Activity Manager 2. Window manager 3.view system Manager(like
frame ,button, image)
Open GLIES- provides 3D graphics libraries
SQLite- use SQLITE which is an open source and lightweight
Media Framework- calls the components to play and view video-audio
Free Type- support the font quality, image
Secured socket layer(SSL)- access online system ,supports http and tcp
Webkit- giving the browser support
Lib c- c libraries
Android runtime: it includes DVM (Dalvik Virtual Machine) and core libraries
DVM
DVM- .dex files
Allows memory management ,security
Core libraries
Data structures
File access
Network access
Graphics
Linux Kernel: .dex file goes to the Linux kernel and call suitable drivers likes
Display Cameras Bluetooth Flash Memory etc
MSBTE CAMPUS
ACADEMY