lecture 1 & 2 Mobile Application Development.pdf

AleenaJamil4 0 views 47 slides Oct 07, 2025
Slide 1
Slide 1 of 47
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47

About This Presentation

app development


Slide Content

Mobile Application Development
LECTURE 01

What is Mobile Application Development?
“Mobile application development is the process of making software for smartphones, tablets and
digital assistants, most commonly for the Android and iOS operating systems”.
Talking about the mobile applications, the first thing that comes to mind are the apps like
Whatsapp, Instagram etc that we use in our everyday life. Ever thought about how these apps
are made? Which technology is used? Let’s discuss what technologies or frameworks can be
used to develop a mobile application. Mobile apps are majorly developed for 3 Operating System
Ø Android
Ø IOS
Ø Windows

What is Android?
Android is an open source and Linux-based operating system. Developed by the Open Handset
Alliance, led by Google and other companies. Google has further developed Android TV for
televisions, Android Auto for cars, and wear OS for wrist watches.
Open-Source Linux-Based Operating System
A B C

Operating system??
Ø An operatng system is a software that enables the hardware to communicate and operate with
the software.
Ø Operatng System is an interface between hardware and user. It works as a translator between
hardware and user. We cannot interact with hardware because hardware understands the 0’s
and 1’s.
Ø An operatng system provides a software platform on top of which other programs, called
application programs can run.
Example:
We open a video in VLC media player. The operating system will receive the input and
generates the output from the hardware.

What is Open-Source??
ØThe source code of a computer program that is made available for free of charge to the public.
Ø Users can view the code that comprise the software and make any kind of changes to it they
want.
Ø It means we have not to pay or buy a license for the specific program’s code. We can use it free
and open. (license free code)
Ø Anyone can take the source code and distribute their own program from it.

What is Linux??
Ø Linux is a family of free and open-source software operating systems built around the kernel
Linux.
Ø The development of Linux is one of the most prominent examples of free and open-source
software collaboration.
1.Ubuntu
2.Kali Linux etc.

History of Android
The history and versions of android are interesting to know. Let's understand the android history
in a sequence.
1.Initially, Andy Rubin founded Android Incorporation in Palo Alto, California, United States in
October, 2003.
2.The key employees of Android Incorporation are Andy Rubin, Rich Miner, Chris White and
Nick Sears.
3.Android is the nick name of Andy Rubin given by coworkers because of his love to robots.
4.Originally intended for camera but shifted to smart phones later because of low market for
camera only.
5.In 17th August 2005, Google acquired android Incorporation. Since then, it is in the
subsidiary of Google Incorporation.

Android Inc. to Google Android
Ø The idea of making an open-source smartphone operating system that would rival Symbian,
Apple IOS and Microsoft windows mobile was the key reason google got attracted to.
Ø Back in 2005, the company quietly(and cheaply) made what we think was its best acquisition
to date. It purchased the startup company Android for $50 million.

OHA (Open Handset Alliance)
Ø The Open Handset Alliance (OHA) is a consortium of 84 firms to develop open standards for
mobile devices.
Ø The OHA was established in 5 November 2007, led by Google with 34 members, including
mobile handset makers, application developers, some mobile carriers and chip makers.
Ø In 2008, HTC launched the first android mobile.

Key Dates
October 2003 - Android Inc. was founded.
July 2005 – Google acquired Android Inc.
November 5, 2007 – OHA (Open Handset Alliance) was formed.
October 22, 2008 – First Android Smartphone HTC Dream was launched.
September 3, 2024 - OS’s latest version Android 15.0 released.

Android Versions
ØThe first commercial version, Android 1.0, was released on September 23, 2008.
Ø Android code names are confectionery (sweets and chocolates) – themed and have been in
alphabetical order since 2009’s Android 1.5 Cupcake

Cupcake (1.5)
ØIt included all the basic Google programs (search, mail, contacts, calendar, etc) along with
synchronization.
ØSupport for Widgets, such as a search box into the app on the home screen, virtual keyboard,
MPEG-4 video and YouTube uploading.
April 27, 2009

Donut (1.6)
On September 15, 2009, Android 1.6 was released with the name Donut. It contains numerous
new features such as voice and text entry search, bookmark history, contacts, web, "speak" a
string of text, faster camera access, user can select multiple photos for deletion, support text-to-
speech engine, WVGA screen resolutions.
September 15, 2009

Eclair (2.0 to 2.1)
On October 26, 2009, Android 2.0 was released, whose codename was Eclair. It was based on
Linux kernel 2.6.29. It contains the several new features as expanded account sync, Microsoft
Exchange email support, Bluetooth 2.1, ability to tap a Contact photo and select to call, SMS,
ability to search all saved SMS, MMS messages, delete the oldest message automatically when
the defined limit is reached, Minor API, bug fixes.
October 26, 2009

Froyo (2.2 to 2.2.3)
On May 20, 2010, Android 2.2 (Froyo) was released based on Linux kernel 2.6.32. It contains
several features as speed, memory, performance optimization. JIT compilation, Integration of
Chrome's V8, JavaScript engine into the Browser application, support Android Cloud to Device
Messaging service, Adobe Flash support, security updates, and performance improvement.
May 20, 2010

Gingerbread (2.3 to 2.3.7)
On December 6, 2010, the Android 2.3 (Gingerbread) was released based on Linux kernel 2.6.35.
It includes the following changes: support for extra-large screen size and resolutions, updated
user interface design with increased simplicity and speed, enhanced copy/paste functionality,
select a word by press-holding, support Near Field Communication (NFC), headphone
virtualization, new Download Manager.
December 6, 2010

Honeycomb (3.0 to 3.2.6)
On February 22, 2011, Android 3.0 (Honeycomb) was launched for the first tablet for Android-
based on Linux kernel 2.6.36. It contains the features like "holographic" user interface for tablet,
added system Bar, simplified multitasking tapping Recent Application in system Bar, redesign the
keyboard making fast typing, quick access to camera exposure, hardware acceleration, support
for multi-core processor, UI refinements, connectivity for USB accessories, support for joysticks
and gamepads, high-performance Wi-Fi lock, improved hardware support, Google Books, fixed
data connectivity issues when coming out of Airplane mode.
February 22, 2011

Ice cream sandwich (4.0 to 4.0.4)
On October 18, 2011, Android 4.0.1 (Ice Cream Sandwich) was launched, which was based on
Linux kernel 3.0.1. It was the last version of officially support Adobe System Flash player. It
introduces the numerous new features: refinements to "Holo" interface with new Roboto font
family, separation of widgets in a new tab, integrated screenshot capture, improved error
correction on the keyboard, improved copy and paste functionality, build-in photo editor, fixed
minor bugs, improvement to graphics, spell-checking, better camera performance.
October 18, 2011

Jelly Bean (4.1 to 4.3.1)
On July 9, 2012, Google announced Android 4.1(Jelly Bean) in the Google I/O conference. It is
based on Linux kernel 3.0.31. It updates to following features: smoother user interface, enhance
accessibility, expandable notification, one-finger gestures to expand/collapse notifications, lock
screen improvement, multiple user accounts (tablets only), new clock application, Bluetooth low
energy support, volume for incoming call, native emoji support.
July 9, 2012

KitKat (4.4 to 4.4.4)
On October 31, 2013, Google announced Android 4.4 (KitKat). Initially, its code name was "Key
Lime Pie". It includes several new features as clock no longer display bold hours, wireless
printing capability, WebViews are based on Chromium engine, sensor batching, built-in screen
recording feature, better application compatibility, camera application loads Google+ Photo
instead of Gallery.
October 31, 2013

Lollipop (5.0 to 5.1.1)
Android 5.0 "Lollipop" was initially named "Android L" on June 25, 2014. It was officially
introduced on November 12, 2014. Lollipop provides several features like redesigned user
interface, support for 64-bit CPUs, support for print previews, material design, Project Volta for
battery life improvement, multiple user accounts, audio input, and output through USB devices,
join Wi-Fi networks, support for multiple SIM cards, device protection, high-definition voice calls,
native Wi-Fi calling support.
November 12, 2014

Marshmallow (6.0 to 6.0.1)
Android 6.0 "Marshmallow" was disclosed under the codename "Android M" on May 28, 2015,
for Nexus 5 and Nexus 6 phones, Nexus 9 tablet. On October 5, 2015, Android lunches
"Marshmallow" for all android devices. It contains the various new features as App Standby
feature, introduce the Doze mode to save battery life, native fingerprint reader support, run-
time permission requests, USB-C support, Unicode 7.0 & 8.0 emoji support.
October 5, 2015

Nougat (7.0 to 7.1.2)
Android 7.0 "Nougat" was the major release for the Android operating system. Its initial
codename was "Android N". It was first released as a developer preview on March 9, 2016, with
factory images for the Nexus device. On August 22, 2016, the final preview built was released
with following features: file-based encryption, zoom in the screen, multi-window support, new
Data Saver mode, JIT compiler makes 75 percent faster app installation, picture-in-picture
support, support manager APIs, battery usage alerts.
August 22, 2016

Oreo (8.0 to 8.1)
Android 8.0 "Oreo" was the 8th major release of the Android operating system. It was first
released for developer preview on March 21, 2017. The final developer preview was released on
July 24, 2017. On August 21, 2017, its stable version was released with several features: picture-
in-picture support, support for Unicode 10.0 emoji (5.0), restructured settings, adoptive icons,
notification channels, notification dots, 2 times faster boot time, Google Play Protect, Integrated
printing support, Neural network API, shared memory API, automatic light, and dark themes.
August 21, 2017

Pie (9.0)
Android 9.0 "Pie" was the ninth major version of the Android operating system. It was first
announced and preview launched by Google on March 7, 2018. It was officially released on
August 6, 2018. It has the following features: the clock has moved to the left of the notification
bar, the "screenshot" button has been added, battery percentage always shown on display.
August 6, 2018

Android 10
Android 10 is the tenth extensive version of the Android operating system. Android 10 has
developed under the codename "Android Q". It was initially announced by Google on March 13,
2019 and its first beta version was released on same day and its second beta was released on
April 3, 2019. The stable version of Android 10 was released on September 3, 2019. It contains
features like new permissions to access location in the background, floating setting panel,
support for an AV1 video codec, support for biometric authentication, support the WPA3 Wi-Fi
security.
September 3, 2019

Android 11 (1/2)
Android 11 operating system is the eleventh big release of Android. It is the 18th version of
Android mobile OS, which was released on 8 September 2020. The alphabetic naming system of
Android, based on deserts, was stopped since Android 10. So therefore, this operating system
has branded with "Android 11".
September 8, 2020

Android 11 (2/2)
Features included in Android 11
ØConversations: Get all your message in one place.
ØAccessibility: Perceptive apps help us to control and navigate our phone using voice command.
ØDevice controls: Android 11 allows us to control all our connected devices (IOT) from a single point.
ØContent capture: Android 11 comes with a screen recording feature that captures our phone's
current screen activity.
ØPredictive tools: By predicting our habits and patterns of working, it suggests accordingly.
ØPrivacy & security: Android 11 gives more security and privacy fixes to our smartphone straight from
Google Play.
ØMedia: We can play music from other devices connected to our phones.

Android 12L
Android 12L
is an interim release for Android 12 that includes design tweaks for larger displays
and minor stability changes to the operating system. It was announced in October 2021
alongside Beta releases with a stable version launching on March 7, 2022. Improvements specific
for foldable phones, tablets, desktop-sized screens and Chromebooks, and modifications to the
user interface to tailor it to larger screens.
October 17, 2021

Android 13
Android 13 is the thirteenth major version of the Android operating system released on August 15,
2022. Apps are now required to request permission from the user before they are able to send
notifications. The number of active apps is now shown at the bottom of the notifications panel, a
tap on it opens a detailed panel which lets the user stop each of them.
August 15, 2022

Android 14
Android 14 is the fourteenth major version of the Android operating system. Google announced
Android 14 on February 8, 2023, with the first Developer Preview releasing on the same day.
Installation of apps designed to target Android versions and SDKs older than Marshmallow
(6.0) is blocked to prevent malware.
October 4, 2023

Android 15
Android 15 is the fifteenth major version of the Android operating system released on
September 3, 2024. Reintroduction of lock screen widgets, which were introduced in Android 4.2
and removed in Android 5.0.
September 3, 2024

Features of Android
After learning what is android, let's see the features of android. The important features of android are given
below:
1)It is open-source.
2)Anyone can customize the Android Platform.
3) There are a lot of mobile applications that can be chosen by the consumer.
4)It provides many interesting features like weather details, opening screen, live RSS (Really Simple
Syndication) feeds etc.
It provides support for messaging services(SMS and MMS), web browser, storage (SQLite), connectivity
(GSM, CDMA, Blue Tooth, Wi-Fi etc.), media, handset layout etc.

Categories of Android Applications
There are many android applications in the market. The top categories are:
Ø Entertainment
Ø Tools
Ø Communication
Ø Productivity
Ø Personalization
Ø Music and Audio
Ø Social
Ø Media and Video
Ø Travel and Local etc.

Android Architecture
Android architecture or Android software stack is categorized into five parts:
Ø Linux kernel
Ø native libraries (middleware),
Ø Android Runtime
Ø Application Framework
Ø Applications
Let's see the android architecture first on next slide.

Android Architecture (cont.…)
1) Linux kernel
It is the heart of android architecture that exists at the root of android architecture. Linux kernel is
responsible for device drivers, power management, memory management, device management and resource
access.
2) Native Libraries
On the top of Linux kernel, their are Native libraries such as WebKit, OpenGL, FreeType, SQLite, Media, C
runtime library (libc) etc. The WebKit library is responsible for browser support, SQLite is for database,
FreeType for font support, Media for playing and recording audio and video formats.
3) Android Runtime
In android runtime, there are core libraries and DVM (Dalvik Virtual Machine) which is responsible to run
android application. DVM is like JVM but it is optimized for mobile devices. It consumes less memory and
provides fast performance

Android Architecture (cont.…)
4) Android Framework
On the top of Native libraries and android runtime, there is android framework. Android framework
includes Android API's such as UI (User Interface), telephony, resources, locations, Content Providers (data)
and package managers. It provides a lot of classes and interfaces for android application development.
5) Applications
On the top of android framework, there are applications. All applications such as home, contact, settings,
games, browsers are using android framework that uses android runtime and libraries. Android runtime
and native libraries are using Linux kernel.

Android Core
Building Blocks
An android component is simply a
piece of code that has a well defined
life cycle e.g. Activity, Receiver, Service
etc.
The core building blocks or
fundamental components of android
are activities, views, intents, services,
content providers, fragments and
AndroidManifest.xml.
Activity
An activity is a class that represents a
single screen. It is like a Frame in AWT.
View
A view is the UI element such as
button, label, text field etc. Anything
that you see is a view.

Android Core Building Blocks (cont.…)
Intent
Intent is used to invoke components. It is mainly used to:
Ø Start the service
Ø Launch an activity
Ø Display a web page
Ø Display a list of contacts
Ø Broadcast a message
Ø Dial a phone call etc.
For example, you may write the following code to view the webpage

Android Core Building Blocks (cont.…)
Service
Service is a background process that can run for a long time. There are two types of services local and remote. Local
service is accessed from within the application whereas remote service is accessed remotely from other applications
running on the same device.
Content Provider
Content Providers are used to share data between the applications.
Fragment
Fragments are like parts of activity. An activity can display one or more fragments on the screen at the same time.
AndroidManifest.xml
It contains information about activities, content providers, permissions etc. It is like the web.xml file in Java EE.
Android Virtual Device (AVD)
It is used to test the android application without the need for mobile or tablet etc. It can be created in different
configurations to emulate different types of real devices.

Android Emulator
The Android emulator is an Android Virtual Device (AVD), which represents a specific Android
device. We can use the Android emulator as a target device to execute and test our Android
application on our PC. The Android emulator provides almost all the functionality of a real device.
We can get the incoming phone calls and text messages. It also gives the location of the device
and simulates different network speeds. Android emulator simulates rotation and other
hardware sensors. It accesses the Google Play store, and much more.
Testing Android applications on emulator are sometimes faster and easier than doing on a real
device. For example, we can transfer data faster to the emulator than to a real device connected
through USB.
The Android emulator comes with predefined configurations for several Android phones, Wear
OS, tablet, Android TV devices.

Android Emulator
Requirement and recommendations
The Android emulator takes additional requirements beyond the basic system requirement for Android
Studio. These requirements are given below:
Ø SDK Tools 26.1.1 or higher
Ø 64-bit processor
Ø Windows: CPU with UG (unrestricted guest) support
Ø HAXM 6.2.1 or later (recommended HAXM 7.2.0 or later)
Install the emulator
The Android emulator is installed while installing the Android Studio. However some components of
emulator may or may not be installed while installing Android Studio. To install the emulator component,
select the Android Emulator component in the SDK Tools tab of the SDK Manager.
Tags