KEMBAR78
Android App Development | PDF | Android (Operating System) | Smartphone
0% found this document useful (0 votes)
12 views31 pages

Android App Development

Android Basics

Uploaded by

Chandan M N
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views31 pages

Android App Development

Android Basics

Uploaded by

Chandan M N
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 31

Course Title:Mobile Application

Development

Course Code : P22MCA351


Course Learning Objectives (CLOs)

 The objectives of this course are to:

• Understand mobile architecture and OS.

• Illustrate effective user interfaces that leverage evolving mobile

device capabilities.
• Design mobile apps for Android devices.

• Learn about Android Databases such as SQLite

• Explain the sensors, maps and location based services


UNIT-1
Hello, Android
What is Android?

• Android is an open source Linux-based


operating system for touch screen based
mobile devices such as smartphones and
tablet computers.

• Android was developed by the Open


Handset Alliance, led by Google
• There are 3.3 billion Android OS users in
the world as of 2024. Android captures
71.85% of the mobile OS market.
Devices running Android

CAR
SMARTPHONE NAVIGATIO
N
SYSTEM

WEARABLES
TABLET
OS – definition and basic
purpose
• An Operating System (OS) is a system
software that manages computer hardware &
software resources and provides
common services for computer programs.

• All computer programs, excluding firmware,


require an operating system to function.

• Operating systems are found on various


computing devices – PCs, laptops, mobile
phones, tablets, wearables, car systems,
video game consoles, web
servers and supercomputers.
OS functions

BASIC FUNCTIONS
• IO Management – reading/writing data to/from monitor, keyboard, mouse,
printer
• File management – create, save, edit, delete files and manage directories
• Memory Management – store/retrieve data from ROM, RAM, CD, USB
and other memory devices
• Process Management – start, stop, switch between programs, allot
memory/CPU to programs

EXTENDED FUNCTIONS
• Network Management – Client / server IP networking, cellular
mobile networks, wireless networks
• Security management – User security (authentication, authorisation),
data
security
Background
• Software platform from Google and the Open
Handset Alliance
• July 2005, Google acquired Android, Inc.
• November 2007, Open Handset Alliance
formed to develop open standards for mobile
devices
• October 2008, Android available as open source
• December 2008, 14 new members joined Android
project
• April 30, 2009: Official 1.5 Cupcake release
• September 15, 2009: 1.6 SDK Donut release
• October 26, 2009: 2.0 SDK Éclair release
• Updates to the Éclair release:
• 2.0.1 on December 3, 2009
• 2.1 on January 12, 2010
Agenda
• A little Background
• What Android Isn’t
• An open Platform for Mobile Development
• Native Android Applications
• Android SDK Features
• Access to hardware[including camera, GPS and Sensors]
• Introducing the Open Handset Alliance
• What Does Android Run on?
• Why Develop for Mobile?
• Why Develop for Android?
• Development Framework
Android version history

• All Android versions


are named after
desserts.

• Google put these


sugary names in
alphabetical order.

• The latest version of


the platform is
now Oreo Android
15.0
A little Background

• Developers to write complex C/C++ code and


make heavy use of proprietary APIs that
are notoriously difficult to work with.
• This difficulty is amplified for applications
that must work on different
hardware implementations and those that
make use of a particular hardware feature,
such as GPS.
• In mobile phone development was the
introduction of Java hosted MIDlets.
What Android Isn’t

• A Java ME implementation
• Part of the Linux Phone Standards Forum
(LiPS) or the Open Mobile Alliance
(OMA)
• Simply an application layer (like UIQ or
S60)
• A mobile phone handset
• Google’s answer to the iPhone
An open Platform for Mobile Development
• A Compatibility Definition Document (CDD) and Compatibility Test Suite
(CTS) that describe the capabilities required for a device to support the
software stack.
• A Linux operating system kernel that provides the low-level interface with
the hardware, memory management, and process control, all optimized for
mobile devices
• Open source libraries for application development including SQLite,
WebKit, OpenGL, and a media manager
• A run time used to execute and host Android applications, including the Dalvik
virtual machine and the core libraries that provide Android specific functionality.
The run time is designed to be small and efficient for use on mobile devices.
• An application framework that agnostically exposes system services to the
application layer, including the window manager, content providers, location
manager, telephony, and peer-to-peer services
• A user interface framework used to host and launch applications
• Preinstalled applications shipped as part of the stack
• A software development kit used to create applications, including the tools, plug-
ins, and documentation
Native Android Applications
• An e-mail client compatible with Gmail but not
limited to it
• An SMS management application
• A full PIM (personal information
management) suite including a calendar and
contacts list.
• A WebKit-based web browser
• A music player and picture gallery
• A calculator
• A home screen
• An alarm clock
Native Android Applications
• The Google Play Store for downloading third-
party Android applications
• A fully featured mobile Google Maps
application, including Street View, driving
directions , and turn-by-turn navigation, satellite
views, and traffic conditions
• The Gmail email client
• The Google Talk instant-messaging client
• The YouTube video player
Android SDK Features
• GSM, EDGE, 3G, 4G, and LTE networks for telephony or data
transfer, enabling you to
• Make or receive calls or SMS messages, or to send and
retrieve data
across mobile networks
• Comprehensive APIs for location-based services such as GPS and
network-based location detection
• Full support for applications that integrate map controls as part of
their user interfaces
• Wi-Fi hardware access and peer-to-peer connections
• Full multimedia hardware control, including playback and recording
with the camera and microphone
• Media libraries for playing and recording a variety of audio/video or
still-image formats
• APIs for using sensor hardware, including
accelerometers, compasses, and barometers
• Libraries for using Bluetooth and NFC hardware for peer-
to-peer
data transfer
Android SDK Features
• Shared data stores and APIs for contacts, social networking,
calendar, and multi-media
• Background Services, applications, and processes
• Home-screen Widgets and Live Wallpaper
• The ability to integrate application search results into the
system
searches
• An integrated open-source HTML5 WebKit-based browser
• Mobile-optimized, hardware-accelerated graphics, including a path-
based 2D graphics library and support for 3D graphics using
OpenGL ES 2.0
• Localization through a dynamic resource framework
• An application framework that encourages the reuse of application
components and the replacement of native applications
Access to Hardware, including
camera,GPS and Sensors
• Android includes API libraries to simplify
development involving the underlying device
hardware.
• Create Android applications that work as expected on
any device that supports the Android software stack.
• The Android SDK includes APIs for location- based
hardware (such as GPS), the camera, audio, network
connections, Wi-Fi, Bluetooth, sensors (including
accelerometers), NFC, the touchscreen, and power
management.
Introducing the Open Handset Alliance

• The Open Handset Alliance (OHA) is a collection of more than 80


technology companies, including hardware manufacturers, mobile
carriers, software developers, semiconductor companies, and
commercialization companies.
• Particular note are the prominent mobile technology companies,
including Samsung, Motorola, HTC, T-Mobile, Vodafone, ARM,
and Qualcomm.
• OHA represents the following:
A commitment to openness, a shared vision for the
future, and concrete plans to make the vision a reality.
To accelerate innovation in mobile and offer
consumers a richer, less expensive, and better mobile
experience. —www.openhandsetalliance.com
What Does Android Run on?
• The first Android mobile handset, the T-
Mobile G1, was released in the United
States in October 2008.
• Android is designed to support a large
variety of hardware platforms, from
smartphones to tablets and televisions.
• Android as a platform for creating
powerful applications will encourage
device manufacturers to produce
increasingly diverse and tailored
hardware.
Why Develop for Mobile?
• In market terms, the emergence of modern mobile
smartphones.
• Mobile-phone ownership easily surpasses computer
ownership in many countries.
• The increasing popularity of modern smartphones,
combined with the increasing availability of highspeed
mobile data and Wi-Fi hotspots, has created a huge
opportunity for advanced mobile applications.
• The ubiquity of mobile phones, a phone can effectively
become an extra-sensory perception device.
• The application developer, a unique opportunity to create
dynamic, compelling new applications that become a vital
part of people’s lives.
Why Develop for Android?

• No certification is required to
become an Android developer.
• Google Play provides free, up-front
purchase, and in-app billing options
for distribution and monetization of
your applications.
• There is no approval process for
application distribution.
• Developers have total control
over their brands.
Factors Driving Android’s
Adoption
• Developers have always been a critical element within the Android
ecosystem, with Google and the OHA betting that the way to deliver
better mobile software to consumers is to make it easier for
developers to write it.

• As a development platform, Android is powerful and intuitive,


enabling developers who have never programmed for mobile
devices to create innovative applications quickly and easily.

• Developers write applications for Android because they can’t write


them for other platforms.

• Open systems such as Linux and the powerful APIs provided as part
of the Windows operating system that enabled the explosion in
personal computers and the movement of computer programming
from the arcane to the mainstream.

• This openness and power ensure that anyone with the inclination can
bring a vision to life at minimal cost.
What Android Has That Other
Platforms Don’t Have
• Google Maps applications
• Background services and applications
• Shared data and inter-process communication
• All applications are created equal
• Wi-Fi Direct and Android Beam
• Home-screen Widgets, Live Wallpaper, and the
quick search box
The Changing Mobile
Development
Landscape
• Existing mobile development platforms have created an aura of
exclusivity around mobile development.
• the real power lies in users’ ability to completely customize their
devices’ look, feel, and function — giving application developers an
exciting opportunity.
• Rather than writing small-screen versions of software that can be
run on low-power devices, you can now build mobile applications
that change the way people use their phones.
• The field of mobile development is currently enjoying a period of
rapid innovation and incredible growth.
• Android will continue to advance and improve to compete with
existing and future mobile development platforms, but as an open-
source developer framework, the strength of the SDK is very much
in its favor.
Introducing the Development
Framework
• Android applications normally are written using Java as the programming
language but executed by means of a custom VM called Dalvik, rather than
a traditional Java VM.

• Android application runs in a separate process within its own Dalvik


instance, relinquishing all responsibility for memory and process
management to the Android run time, which stops and kills processes as
necessary to manage resources.

• Dalvik and the Android run time sit on top of a Linux kernel that handles
low-level hardware interaction, including drivers and memory
management, while a set of APIs provides access to all the underlying
services, features, and hardware.
What Comes in the Box

• The Android APIs


• Development tools
• The Android Virtual Device Manager and emulator
• Full documentation
• Sample code
• Online support
Understanding the Android
Software Stack
The Dalvik Virtual Machine
• Android uses its own custom VM designed to ensure that multiple
instances run efficiently on a single device.
• The Dalvik VM uses the device’s underlying Linux kernel to handle low-
level functionality, including security, threading, and process and memory
management.
• If the speed and efficiency of C/C++ is required for your application,
Android provides a native development kit (NDK). The NDK is designed
to enable you to create C++ libraries using the libc and libm libraries, along
with native access to OpenGL.
• All Android hardware and system service access is managed using Dalvik
as a middle tier. By using a VM to host application execution, developers
have an abstraction layer that ensures they should never have to worry
about a particular hardware implementation.
• The Dalvik VM executes Dalvik executable files, a format optimized to
ensure minimal memory footprint. You create .dex executables by
transforming Java language compiled classes using the tools supplied
within the SDK.
Android Application Architecture

• Activity Manager and Fragment Manager


• Views
• Notification Manager
• Content Providers
• Resource Manager
• Intents

You might also like