0% found this document useful (0 votes)
18 views48 pages

M Tech Notes

Mobile application development involves creating software for smartphones and digital assistants, primarily for Android and iOS, using languages like Java and Swift. The document discusses the history, types, and platforms of mobile applications, highlighting the distinction between native, web-based, and hybrid apps. It also covers the significance of app distribution platforms like Google Play and the Apple App Store, along with key statistics about mobile app usage and revenue generation.

Uploaded by

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

M Tech Notes

Mobile application development involves creating software for smartphones and digital assistants, primarily for Android and iOS, using languages like Java and Swift. The document discusses the history, types, and platforms of mobile applications, highlighting the distinction between native, web-based, and hybrid apps. It also covers the significance of app distribution platforms like Google Play and the Apple App Store, along with key statistics about mobile app usage and revenue generation.

Uploaded by

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

WEB AND MOBILE APPLICATION DEVELOPMENT

CHAPTER - 1
Introduction on Mobile Application:
Mobile application development is the process to making software for smartphones and digital
assistants, most commonly for Android and iOS. The software can be preinstalled on the
device, downloaded from a mobile app store or accessed through a mobile web browser. The
programming and markup languages used for this kind of software development include Java,
Swift, C# and HTML5.

Definition:

A mobile application, also referred to as a mobile app or simply an app, is a computer


program or software application designed to run on a mobile device such as a phone,
tablet, or watch.

Mobile applications often stand in contrast to desktop applications which are designed to run
on desktop computers, and web applications which run in mobile web browsers rather than
directly on the mobile device.

A mobile application, most commonly known as an app, is a kind of application software


intended to run on a mobile phone, for example, a smartphone or tablet PC.

Examples: WhatsApp, Facebook, Instagram, Tik Tok, Snapchat etc.

Mobile application Provides information and information services on the global


network,including email,calendar,stock market listing and weathers information.

Key Mobile App Statistics


• Mobile apps are expected to generate over $935 billion in revenue by 2023.
• The Apple App Store has 1.96 million apps available for download.
• There are 2.87 million apps available for download on the Google Play Store.
• 21% of Millennials open an app 50+ times per day.
• 49% of people open an app 11+ times each day.

History of Mobile Application:


APP - Application Portability Profile.
• Mobile communication is so integrated into our lives that many people feel
uncomfortable without a cell phone.
• Once upon a time, the most popular functions of phones were calling and sending texts.

Er. SANDESH ADHIKARI 1


WEB AND MOBILE APPLICATION DEVELOPMENT

• A smart phone is a multifunctional device that not only communicates, but helps to
learn, earn, and have fun.
• This is made possible by the development of mobile applications.

 Mobile applications date back to the end of the twentieth century.


 Typically, they were small arcade games, ring tone editors, calculators, calendars, and
so.

Operating systems for smart phones (Windows Mobile, Symbian, RIM, Android, Mac iOS),
are open to the development of third-party software, unlike the conventional programming
environment of standard cell phones.
An operating system (OS) is system software that manages computer hardware,
software resources, and provides common services for computer programs.
Operating systems are found on many devices that contain a computer.

Mobile developers want the freedom to develop the powerful mobile applications users
demand without restrictions. Finally, handset manufacturers want a stable, secure, and
affordable platform to power their devices.

• The Motorola DynaTAC 8000X was the first commercially available cell phone.
• First marketed in 1983, it was 13 x 1.75 x 3.5 inches in dimension, weighed about 2.5
pounds, and allowed you to talk for a little more than half an hour.
• It retailed for $3,995, plus hefty monthly service fees and per-minute charges.
• It made calls, and there was a simple contacts application included in the operating system.

Er. SANDESH ADHIKARI 2


WEB AND MOBILE APPLICATION DEVELOPMENT

It was during this period the first “time-waster” games begin to appear.
Nokia was famous for putting the 1970s video game some of its earliest phones.
In 1997, the Nokia 6110 included a built-in version of the basic arcade game “Snake,”
which many consider the first mobile app.
Other followed, adding games like Pong, Tetris, and Tic-Tac-Toe.
These early phones changed the way people thought about communication. As mobile
phone prices dropped, batteries improved, reception areas grew, and more and more people
began carrying these handy devices.

By the late 90s, professional Web sites were full color and loaded with text, images, and
other types of media.
They relied on JavaScript and Flash to enhance the user experience and were often
designed at 800×600 pixels.

Mobile Application Distribution Platform

Mobile app distribution platforms includes digital distribution platforms, or marketplace


'app stores', that are intended to provide mobile applications, aka 'apps' to mobile devices.

App distribution is the process of releasing an app to a broad set of users in order to
promote app engagement and usage in digitally.

The process where it is giving users to Peruse or Examine and download application, Music,
Films rentals and buying and digital books created called the digital distribution.

Mobile Platforms:

A variety of different platforms emerged — and developers are still actively creating
applications for them.
One of the first was the
 Palm OS (now Garnet OS) and RIM Blackberry OS.
 Sun Microsystems popular Java platform became Java Micro Edition (Java ME).
 Qualcomm developed its Binary Runtime Environment for Wireless (BREW). 
Symbian OS was developed by Nokia,
 Sony Ericsson, Motorola, and Samsung.
 The Apple iPhone iOS joined the ranks in 2007 - 2008.
 Google’s Android came along a year later.
Android and IOS are mobile platform where Google Play store and App Store are the
Mobile Application Distribution Platform.

List of Mobile Application Platforms:

1. Native platforms
2. Third-party platforms

Native Platforms:
Er. SANDESH ADHIKARI 3
WEB AND MOBILE APPLICATION DEVELOPMENT

The term native app development refers to building a mobile app exclusively for a
single platform. For example, you can develop a native Android app with Java or Kotlin
and choose Swift and Objective-C for iOS apps. Native apps are known to deliver
exceptional user experience as they are generally high performance.

Examples:
App Store Name Device Platform
Amazon App Store for Android Android and BlackBerry 10
Apple App Store for IOS/IPadOs IOS and IPadOs
BlackBerry World BlackBerry OS
Google Play for Android Android
Huawei App Gallery Huawei Android/Harmony Os
Nokia Store Nokia Android, Symbian
Samsung Galaxy Store Android, Tizen, Windows Mobile

Third-party platforms:
Third-party platforms are software distribution platforms which are used as alternatives
for operating system native distribution platforms.
Independent operating systems are software collections which use their own software
distribution, customised user interface (UI), software development kit (SDK) and
application programming interface (API) (except billing API which is related only to
application store).
Examples:
App Store Name Device Platform
Appland Android and iOS

Aptoide Android
Cydia IOS
Cafe Bazaar Android
GetJar Android, BlackBerryOS, Flash
Lite, Java, iOS, Palm
OS, Symbian, Windows Phone
Opera Mobile Store Android, Java, Symbian, BlackBerry
OS, Windows Mobile, iOS

Types of Mobile Application:


1. Native app
2. Web-based app
3. Hybrid app

Er. SANDESH ADHIKARI 4


WEB AND MOBILE APPLICATION DEVELOPMENT

• Native apps are created for one specific platform or operating system.
Native apps are built specifically for a mobile device’s operating system (OS).
Thus, you can have native Android mobile apps or native iOS apps, not to
mention all the other platforms and devices. Because they’re built for just one
platform, you cannot mix and match – say, use a Blackberry app on an Android
phone or use an iOS app on a Windows phone.

• Web apps are responsive versions of websites that can work on any mobile
device or OS because they’re delivered using a mobile browser.
Web apps behave similarly to native apps but are accessed via a web browser on
your mobile device. They’re not standalone apps in the sense of having to
download and install code into your device. They’re actually responsive websites
that adapt its user interface to the device the user is on. In fact, when you come
across the option to “install” a web app, it often simply bookmarks the website
URL on your device.

Er. SANDESH ADHIKARI 5


WEB AND MOBILE APPLICATION DEVELOPMENT

• Hybrid apps are combinations of both native and web apps, but wrapped
within a native app, giving it the ability to have its own icon or be downloaded
from an app store.
And then there are the hybrid apps. These are web apps that look and feel like
native apps. They might have a home screen app icon, responsive design, fast
performance, even be able to function offline, but they’re really web apps made to
look native.

Er. SANDESH ADHIKARI 6


WEB AND MOBILE APPLICATION DEVELOPMENT

Examples:
Marketwatch (built with Ionic)
Sworkit (built with PhoneGap)
Untappd (built with PhoneGap)
Giro D'Italia official app (built with Onsen UI)
Offcourse Golf (built with Onsen UI)
Tripline (built with Framework 7)

What is an API ?
API stands for “application programming interface.”
An API is essentially a set of rules that dictate how two machines talk to each other. Some
examples of API-based interactions include a cloud application communicating with a
server, servers pinging each other, or applications interacting with an operating system.

Google Play:
Er. SANDESH ADHIKARI 7
WEB AND MOBILE APPLICATION DEVELOPMENT

Play Store is Google's official pre-installed app store on Android-certified devices. It provides
access to content on the Google Play Store, including apps, books, magazines, music, movies,
and television programs.
Google Play Store and formerly Android Market, is a digital distribution service operated and
developed by Google. It serves as the official app store for certified devices running on the
Android operating system and its derivatives as well as Chrome OS, allowing users to browse
and download applications developed with the Android software development kit (SDK) and
published through Google. Google Play also serves as a digital media store, offering music,
books, movies, and television programs. Content that has been purchased on Google Play
Movies & TV and Google Play Books can be accessed on a web browser, and through the
Android and iOS apps. Applications are available through Google Play either free of charge or
at a cost.
[Source Wikipedia ].
Platform : Android, Android TV, Wear OS, Chrome OS, Web;

Apple Store:
Apple Inc. is an American multinational technology company that specializes in consumer
electronics, computer software and online services.
The Apple App Store is a digital distribution platform where individuals can buy and download
digital software and applications. Apps—an abbreviation of the word "applications"—are
software tools that provide additional functionality to an operating system. Apps purchased
from the Apple App Store are stored in the iCloud—a cloud storage and cloud computing
service from Apple—for easy access from any signed-in device.
While Apple maintains that it holds a trademark on the term “app store," the term is used to
reference any platform where apps are sold. Examples of other app stores are Google's Google
Play, the Amazon Appstore, Blackberry World, and Microsoft's Windows Store.
The Apple App Store opened on July 10, 2008, the day before the launch of the iPhone 3G.
Apple’s first app store was originally intended for iOS, but it was later expanded to provide
apps for Macs with the App Store macOS in early 2011.

Windows Store:
Windows Store is a digital distribution platform owned by Microsoft. It started as an app store
for Windows 8 and Windows Server 2012 as the primary means of distributing Universal

Er. SANDESH ADHIKARI 8


WEB AND MOBILE APPLICATION DEVELOPMENT

Windows Platform apps. With Windows 10, Microsoft merged its other distribution platforms
(Windows Marketplace, Windows Phone Store, Xbox Music, Xbox Video, Xbox Store, and a
web storefront also known as "Microsoft Store") into Microsoft Store, making it a unified
distribution point for apps, console games, and digital videos.
The Microsoft Store is an app on Windows and allows you to install apps and games, purchase
digital media and Microsoft devices.
Microsoft announced the Windows Store in September 2011 and opened the marketplace in
February 2012. As of October 2012, the Windows Store contained about 3,600 apps.
The Windows Store does not sell apps for the Windows Phone platform. Those apps are
available through the Windows Phone Store.

Google Assistant
Google Assistant is an artificial intelligence–powered virtual assistant developed by Google
that is primarily available on mobile and smart home devices. Unlike the company's previous
virtual assistant, Google Now, the Google Assistant can engage in two-way conversations.
Google Assistant offers voice commands, voice searching, and voice-activated device control,
letting you complete a number of tasks after you've said the "OK Google" or "Hey Google"
wake words. It is designed to give you conversational interactions.
Google Assistant will:
• Control your devices and your smart home
• Access information from your calendars and other personal information
• Find information online, from restaurant bookings to directions, weather and news
• Control your music
• Play content on your Chromecast or other compatible devices
• Run timers and reminders
• Make appointments and send messages
• Open apps on your phone
• Read your notifications to you
• Real-time spoken translations
• Play games
Google Assistant originally launched on the Google Pixel smartphones and Google Home, but
it is now available to just about all modern Android devices, including Wear OS devices,
Android TV, and Nvidia Shield, as well as any cars that support Android Auto and other
devices too, like Nest cameras and the Lenovo Smart Clock

Er. SANDESH ADHIKARI 9


WEB AND MOBILE APPLICATION DEVELOPMENT

Siri:
As we mentioned, Siri is a built-in, voice-controlled personal assistant available for Apple
users. The idea is that you talk to her as you would a friend and she aims to help you get things
done, whether that be making a dinner reservation or sending a message.
Siri is designed to offer you a seamless way of interacting with your iPhone, iPad, iPod Touch,
Apple Watch, HomePod or Mac by you speaking to her and her speaking back to you to find
or do what you need. You can ask her questions, tell her to show you something or issue her
with commands for her to execute on your behalf, hands-free.
Siri is based on the based on the fields of Artificial Intelligence and Natural Language
Processing, and it is comprised of three components - a conversational interface, personal
context awareness and service delegation.

Difference between Software and Application: [Source GFG] Software:


Software is a collection of programs that co-ordinates with the hardware to run the machine. It
is set of instructions or data that operates the computer how to work. Software is opposite of
the physical aspect, i.e., hardware and it is a complement to the hardware in computer.

Application:
Application is package that performs a specific task for end users. It is a product or a program
that is designed only for end users requirements. All the applications may be in category of
software but vice-versa is not possible.
Software Application

Er. SANDESH ADHIKARI 10


WEB AND MOBILE APPLICATION DEVELOPMENT

Software is a set of instructions or data that Application is a package to perform a


operates the hardware. specific task.
Software is an all encompassing term for Application is a type of software that does
computer data. a certain task.

Software may executable or may not be. Application is always executable.


Software is not often operating system Application is operation system based.
based.
Software does not need user interaction for Application need user interaction for
functioning. functioning.
Software is used as mediator between user Application is used only by end users.
and hardware.
All the software are not applications. All the application are software.

Difference Between Mobile Apps and Web Apps:

Mobile Apps Web Apps


Mobile apps are developed for a specific Web Apps are accessed via the internet
platform, such as iOS for the Apple iPhone browser and will function according to the
or Android device you’re viewing them.

They are downloaded and installed via an Web apps are not native to a particular
app store such as Google Play Store and system and there is no need to be
Apple Store and have access to system downloaded or installed.
resources, such as GPS and the camera of
the device.

Mobile apps may work offline. In order to run web apps need an active
internet connection.
Mobile Apps are comparatively faster. Web Apps are comparatively slower.

Mobile apps have more safety and security. Web apps have comparatively low security.

Maintaining and consistently update of In Web Apps App store approval is not
Mobile apps cause more cost. required, so web apps can be launched
easily.

CHAPTER - 2
Mobile Operating Systems:

Er. SANDESH ADHIKARI 11


WEB AND MOBILE APPLICATION DEVELOPMENT

Before Mobile Operating System understood about Operating system:


An Operating System (OS) is an interface between a computer user and computer
hardware. An operating system is a software which performs all the basic tasks like file
management, memory controlling memory management, process management, handling
input and output, and controlling peripheral devices such as disk drives and printers.

Some OperatingSome popular Operating Systems include Linux Operating System,


Windows OperatingSystem, System, VMS, OS/400, AIX, z/OS, etc.

Operating system goals:


• Make the computer system convenient to use. It hides the difficulty in managing the hardware.
• Use the computer hardware in an efficient manner
• Provide and environment in which user can easily interface with computer.
• It is a resource allocator.

Mobile Operating System:

Er. SANDESH ADHIKARI 12


WEB AND MOBILE APPLICATION DEVELOPMENT

A mobile operating system is an operating system that helps to run other application
software on mobile devices. It is the same kind of software as the famous computer operating
systems like Linux and Windows, but now they are light and simple to some extent.

The operating systems found on smartphones include Symbian OS, iPhone OS, RIM's
BlackBerry, Windows Mobile, Palm WebOS, Android, and Maemo. Android, WebOS, and
Maemo are all derived from Linux. The iPhone OS originated from BSD and NeXTSTEP,
which are related to Unix.

Fig.: Blackberry Mobile Operating system

• Operating system :✓ Controls and coordinates use of hardware among various applications
and users
• Application programs – define the ways in which the system resources are used to solve
the computing problems of the users

• Users : ✓ People, machines, other computers


• JVM (Java Virtual Machine) is an abstract machine. It is a specification that provides
runtime environment in which java bytecode can be executed.
JVMs are available for many hardware and software platforms (i.e. JVM is platform
dependent).
Hardware – provides basic computing resources

✓ CPU, memory, I/O devices

Mobile virtualization:

Er. SANDESH ADHIKARI 13


WEB AND MOBILE APPLICATION DEVELOPMENT

Mobile virtualization is hardware virtualization on a mobile phone or connected wireless


device. It enables multiple operating systems or virtual machines to run simultaneously on a
mobile phone or connected wireless device.

Kernel in Mobile Operating System


Kernel is central component of an operating system that manages operations of computer and
hardware. It basically manages operations of memory and CPU time. It is core component of
an operating system. Kernel acts as a bridge between applications and data processing
performed at hardware level using inter-process communication and system calls.
Kernel loads first into memory when an operating system is loaded and remains into memory
until operating system is shut down again. It is responsible for various tasks such as disk
management, task management, and memory management.
It decides which process should be allocated to processor to execute and which process should
be kept in main memory to execute. It basically acts as an interface between user applications
and hardware. The major aim of kernel is to manage communication between software i.e.
user-level applications and hardware i.e., CPU and disk memory.
Objectives of Kernel:
1. To establish communication between user level application and hardware.
2. To decide state of incoming processes.
3. To control disk management.
4. To control memory management.
5. To control task management.

Needs of Mobile Operating System:


Goal of an Mobile Operating System:
The fundamental goal of a Mobile System is to execute user programs and to make tasks easier.
Various application programs along with hardware systems are used to perform this work.
Operating System is software that manages and controls the entire set of resources and
effectively utilizes every part of a Mobile system.
Need of Mobile Operating System:
1. OS as a platform for Application programs:

Er. SANDESH ADHIKARI 14


WEB AND MOBILE APPLICATION DEVELOPMENT

Operating system provides a platform, on top of which, other programs, called application
programs can run. These application programs help the users to perform a specific task easily.
It acts as an interface. It is designed in such a manner that it operates, controls, and executes
various applications.

2. Managing Input-Output unit:


Operating System also allows the system to manage its own resources such as memory, display
screen or a speaker, a data storage device,keyboard,microphone etc. Management of these
resources is required for effective utilization. The operating system controls the various system
input-output resources and allocates them to the users or programs as per their requirement.

3. Consistent user interface:


Operating System provides the user an easy-to-work user interface, so the user doesn’t have to
learn a different UI every time and can focus on the content and be productive as quickly as
possible. Operating System provides templates, UI components to make the working of a
devices, really easy for the user.

4. Multitasking:
Operating System manages memory and allows multiple programs to run in their own space
and even communicate with each other through shared memory. Multitasking gives users a
good experience as they can perform several tasks on a devices at a time.

Features of Mobile Operating System


1. Easy to use
The graphics should be attractive.
The buttons and features should be easy to use. mOreover, the functionalities should not be
very compilicated.
Features should be powerful and useful.

2. Good app store


An app is one of the basic part of an OS.
Good and useful apps forms an important part of an OS.
The apps should be simple and interactive.

3. Good battery life


Power is one of the main requirement of a smartphone.
They require power for processors sensors etc. Therefore, the battery holds a very important
role.

Er. SANDESH ADHIKARI 15


WEB AND MOBILE APPLICATION DEVELOPMENT

Smartphones power usage keeps on increasing therefore, a good battery backup is very
essential.

4. Data usage and organization


An operating system should focus on controlling the data and network usage. It should keep
the limit and requirement in focus.
Secondly, the organization of data related to to-do lists, calendars, alarms, reminders etc is very
important. A good OS should keep this data in a very organized and safe manner. Moreover,
the data should be readily and easily available.

Types of Mobile Operating system:


1. Android OS:
The Android operating system is the most popular operating system today. It is a mobile OS
based on the Linux Kernel and open-source software. The android operating system was
developed by Google. The first Android device was launched in 2008.
Android is a mobile operating system based on a modified version of the Linux kernel and
other open source software, designed primarily for touchscreen mobile devices such as
smartphones and tablets. Android is developed by a consortium of developers known as
the Open Handset Alliance and commercially sponsored by Google. It was unveiled in
November 2007, with the first commercial Android device, being launched in September
2008.
It is free and open-source software; its source code is known as Android Open Source
Project (AOSP), which is primarily licensed under the Apache License.

2. IOS:
The iOS was developed by the Apple inc for the use on its device. The iOS operating system
is the most popular operating system today. It is a very secure operating system. The iOS
operating system is not available for any other mobiles.
iOS (formerly iPhone OS) is a mobile operating system created and developed by Apple
Inc. exclusively for its hardware. It is the operating system that powers many of the
company's mobile devices, including the iPhone and iPod Touch; the term also included
the versions running on iPads until the name iPadOS was introduced with version 13 in
2019. It is the world's second-most widely installed mobile operating system, after
Android. It is the basis for three other operating systems made by Apple.

Er. SANDESH ADHIKARI 16


WEB AND MOBILE APPLICATION DEVELOPMENT

Unveiled in 2007 for the first-generation iPhone, iOS has since been extended to support
other Apple devices such as the iPod Touch (September 2007) and the iPad (introduced:
January 2010; availability: April 2010.) As of March 2018, Apple's App Store contains
more than 2.1 million iOS applications, 1 million of which are native for iPads.

3. BlackBerry OS:
The BlackBerry operating system is a mobile operating system developed by Research In
Motion (RIM). This operating system was designed specifically for BlackBerry handheld
devices. This operating system is beneficial for the corporate users because it provides
synchronization with Microsoft Exchange, Novell GroupWise email, Lotus Domino, and other
business software when used with the BlackBerry Enterprise Server.
BlackBerry OS is a proprietary mobile operating system developed by Canadian
company BlackBerry Limited for its BlackBerry line of smartphone handheld devices.
The operating system provides multitasking and supports specialized input devices that
have been adopted by BlackBerry for use in its handhelds, particularly the trackwheel,
trackball, and most recently, the trackpad and touchscreen. Initial release January 19,
1999;

CHAPTER - 3
Android Mobile Operating System
Er. SANDESH ADHIKARI 17
WEB AND MOBILE APPLICATION DEVELOPMENT

INTRODUCTION TO ANDROID
Android is a mobile operating system based on a modified version of the Linux kernel and
other open source software, designed primarily for touchscreen mobile devices such as
smartphones and tablets. Android is developed by a consortium or an association of
developers known as the Open Handset Alliance and commercially sponsored by Google.
It was unveiled or show or announce publicly for the first time. in November 2007, with
the first commercial Android device, the HTC Dream, being launched in September 2008.
In 2007, Apple launched the first iPhone and ushered or begin in a new era in mobile
computing. In Sept. 2008, the very first Android smartphone was announced, the T-Mobile G1
went on sale in the U.S. Oct. of that year.
Android 1.0 OS inside integrated a number of the company’s other products and services,
including Google Maps,
YouTube, and an HTML browser (pre-Chrome) that, of course, used Google’s search services.
It also had the first version of Android Market, the app store with ―dozens of unique, first-
ofa-kind Android applications.
The first version of the OS (1.0) released in Sept. 2008 did not have a code name at all.
However, it reportedly used the internal name ―Petit four while it was in development at
Google. The name refers to a French dessert.
Android has come a long way from its humble beginnings, as the product of a small startup, all
the way to becoming the leading mobile operating system worldwide. Google’s introduction
of Project Treble in Android Oreo should make it easier for phone makers to update their
devices faster.
One challenge for Android device owners that has been an issue for the OS ever since it
launched is updating it with the latest security patches, for major feature updates. Google’s
supported Nexus and Pixel devices consistently receive regular monthly security updates, and
the latest version of the OS.
HISTORY OFANDROID
In October 2003, Android Inc was founded in Palo Alto, California and its four founders were
Rich Miner, Nick Sears, Chris White, and Andy Rubin. In 2005, Android was acquired by
Google. Rubin stayed at Google as head of the Android team until 2013.
The logo for the Android OS was created by Irina Blok while she was employed by Google.
Versions of Android along with their names
ANDROID 1.0: ALPHA
ANDROID 1.1: BETA
ANDROID1.5 CUPCAKE
ANDROID1.6 DONUT
ANDROID2.0-2.1 ÉCLAIR
ANDROID2.2 FROYO
ANDROID2.3 GINGERBREAD
ANDROID3.0 HONEYCOMB
ANDROID4.0 ICECREAMSANDWICH
ANDROID4.1-4.3 JELLYBEAN
ANDROID4.4 KITKAT
ANDROID5.0 LOLLIPOP

Er. SANDESH ADHIKARI 18


WEB AND MOBILE APPLICATION DEVELOPMENT

ANDROID6.0 MARSHMALLOW
ANDROID7.0 NOUGAT
ANDROID8.0 OREO
ANDROID9.0 PIE
ANDROID10 Q
ANDROID 11
Android Q will allow users to control apps’ access to their phone’s Photos and Videos or the
Audio collections via new runtime permissions.

Description of version of mobile operating system:


1. Android 1.0: Alpha
The initial version of Android was released on September 23, 2008, known as Android 1.0.
There were many loopholes in this alpha version including the necessity of physical
keyboards or hardware buttons. It has an android API (application program interface) level 1.
API level is the integer value that identifies the API framework revision provided by the
version of the android platform. API framework includes the core set of classes, packages,
XML elements, intents, and permissions that the application can request.
Features
• Google Maps, browser, calendar
• Camera and scroll down the notification bar
• Gmail integration, Contacts, and Google Synchronization.
• Wireless supports – Wi-Fi and Bluetooth.

2. Android 1.1: Beta


Android Beta version was released on February 9, 2009, with API changes and resolved issues
encountered in 1.0. This android version was released for T-Mobile G1 devices only.
Features
• Display details and reviews for locations
• Add Save attachment in the message

Er. SANDESH ADHIKARI 19


WEB AND MOBILE APPLICATION DEVELOPMENT

• Provide detailed information by clicking on the business

3. Android 1.5: Cupcake


It was released on April 30, 2009, with the first official public code name and amazing
features as compared to the old versions. Moreover, it also brought the third-party app
widgets that was the most distinguishing and valuable feature.
Features
• on-screen keyboard and search function
• Uploading videos and images
• Copy and paste facility and video recordings
• Support for MPEG4 and 3GP formats.

4. Android 1.6: Donut


The android 1.6 version was released on September 15, 2009, was many valuable changes
including the ability to operate on a number of different screen resolutions and sizes. Donut
provides the voice and text entry search including bookmark history, and the ability to select
multiple images for deletion.
Features
• Power Control widget for handling Wi-Fi, Bluetooth, GPS, etc.
• Gallery and Camera quick toggling features
• WVGA screen resolution speed
• Technology support for CDMA/EVDO, 802.1x, VPNs, and a text-to-speech engine
• Speed improvements for camera and searching applications
• Quick Search Box

Er. SANDESH ADHIKARI 20


WEB AND MOBILE APPLICATION DEVELOPMENT

5. Android 2.0: Eclair


Éclair 2.0 – 2.1 was released on December 3, 2009, with multiple account synchronizations of
email and contacts. Moreover, there are many new features were added including flash
support, scene mode, white balance, color effect, macro focus and digital zoom. Android 2.1
version brought bug fixes and stability improvements to the Éclair.
Features
• Update UI
• Support Bluetooth 2.1
• Improve Google map
• Minor API Changes
• Support Live and animated Wallpapers
• Ability to add contact’s photo and select to call, message or email.

Er. SANDESH ADHIKARI 21


WEB AND MOBILE APPLICATION DEVELOPMENT

6. Android 2.2: Froyo


Android version 2.2 was released on May 20, 2010, with speed, memory, and performance
improvements. It was introduced with the enhanced Bluetooth functionality and compatibility
with docks, portable WiFi hotspot for sharing the 3G connection. Google Nexus One was the
first smartphone having an android 2.2 android version. Android version list provides you the
complete historical knowledge of android operating system updates and improvements.
Features
• Support for Animated GIF and multiple keyboard languages
• Speed and performance improvements
• Upload file support in the browser
• Support numeric & alphanumeric passwords to enhance security
• Increased Compatibility with car kits and headsets
• Wi-Fi Support Hotspot functionality

7. Android 2.3: Gingerbread


Gingerbread exists in the 7th position in the android version list that was released on
December 6, 2010. The main enhanced feature was the introduction of gaming API with
improved graphical intense gaming, so it has boomed the mobile games.
Features
• Improve Copy and Paste Facility
• Updated UI design

Er. SANDESH ADHIKARI 22


WEB AND MOBILE APPLICATION DEVELOPMENT

• Support for VP8 and WebM video format


• Video calling and Social Networking Supports
• Easy to use a keyboard with faster and intuitive typing

8. Android 3.0: Honeycomb


Honeycomb from the android version list was released in 2011 that was tablet-only release to
launch the Motorola Xoom. It was also suitable for those mobiles having a larger view than
current smartphones.
Features
• Gmail, contacts, camera and gallery improvements
• Support for passwords with complex characters
• encrypted storage and updated 3D UI
• Supports multiprocessors and recent apps for easy visual multitasking
• Media Sync from SD Card
• Action bar for application control
• System bar for global status and notifications
• Google eBooks and Talk Video Chat
• Support Adobe Flash in Browser
• More sensor support
• High-performance Wi-Fi Connections and Lock
• Chinese handwriting and redesigned keyboard

Er. SANDESH ADHIKARI 23


WEB AND MOBILE APPLICATION DEVELOPMENT

9. Android 4.0: Ice Cream Sandwich


The ice cream sandwich was released on October 19, 2011, with many enhanced features to
enter the era of modern design. The snapshot was introduced to take screenshots by holding
the volume and power button. Android version list has a variety of android operating systems
but as compared to all older versions, ice cream sandwich widgets are more robust and
resizable.
Features
• Spelling check feature
• Wi-Fi direct
• Photo Decor facility and on-screen buttons
• Unlocking with face-fixing.
• Card-like appearance for app-switching
• Improved video recording with high resolution
• Better Camera performance
• Ability to open up to 16 tabs in the web browser

10. Android 4.1: Jelly Bean


The better version of android known as Jelly Bean was released in June 2012 with Google
Digital Assistant technology accessible from the home screen. The spectacular predictive
intelligence utility provides expandable and interactive notifications. Moreover, users can
enjoy the multi-user support into play and many other valuable features.
Features
• Voice search and typing
• Panorama
• Project Butter
• Expandable notifications
• Daydream as a screensaver
• Power control
• Support USB audio
• Improved camera app
• Security improvements

Er. SANDESH ADHIKARI 24


WEB AND MOBILE APPLICATION DEVELOPMENT

• New gestures and accessibility features


• Multiple user accounts (Only for tablets)
• 4k resolution support
• Supporting Bluetooth with low energy
• Bi-directional text and different language support
• Set or adjust the volume of incoming calls and show a message alert
• Google displays relevant content based on your search history • Native emoji support

11. Android 4.4: KitKat


Android version 4.4 was released on September 3, 2013, with more focused on better user
experience. KitKat is optimized to run at a larger range of old versions from the android
version list. The smartphone must have a minimum of 512 MB of RAM.
Features
• Screen Recording
• Contact Prioritization
• GPS Support
• Smarter Caller ID
• Offline music support
• UI updates for alarm and google map navigations
• Cartoonish ideograms and emojis to the Google keyboard
• KitKat has ‘OK Google’ feature that allows access to Google to the users without
touching your smartphones.

Er. SANDESH ADHIKARI 25


WEB AND MOBILE APPLICATION DEVELOPMENT

12. Android 5.0: Lollipop


Lollipop or android version 5.0 was released on November 12, 2014, with a redesigned user
interface and built with “material design”. It gives a new and modern look extended across all
of android, applications, and google products. Lollipop from the android version list comes
with many amazing features including Support for better notification management.
Features
• Support ART
• Better device protection
• Notifications can be flicked away from the lock screen
• Better and improved UI
• Built-in battery saver feature
• New material design
• Revamped navigation bar • Support for Multiple sim cards
• High definition of voice call.

Er. SANDESH ADHIKARI 26


WEB AND MOBILE APPLICATION DEVELOPMENT

13. Android 6.0: Marshmallow


In the year 2015, Google used “Macadamia Nut Cookie” to describe android version 6.0 before
the Marshmallow official announcement.
Features
• Support for Fingerprint readers
• Type C USB support
• Multi-window experience
• ’Sleep Mode’ for saving battery life
• Clear permission system
• Custom google tabs and improved Copy-pasting

14. Android 7.0: Nougat


The android 7.0 was released in 2016 with a native split-screen mode, data saver functionality,
and a “bundled-by-app” system to organize notifications.

Er. SANDESH ADHIKARI 27


WEB AND MOBILE APPLICATION DEVELOPMENT

Features
• Provide multitasking and split-screen mode
• Storage manager enhancements
• Quick setting toggles
• Display touch enhancements
• Better setting application
• Inline reply to messages and notifications without opening applications

15. Android 8.0: Oreo


Oreo was released in the year 2017 having native picture-in-picture mode, notification
snoozing options and better control over how applications can alert you by notifications.
Features
• Password autofill
• Auto-enable Wi-Fi
• Downloadable fonts
• Multi-display support
• Support Picture-in-Picture
• Notification channels and snooze notification
• Google Play support and new emoji styling
• Adaptive icons and smart text selection

Er. SANDESH ADHIKARI 28


WEB AND MOBILE APPLICATION DEVELOPMENT

16. Android 9: Pie


The pie was publicly released on August 6, 2018, with plenty of amazing features according
to the users’ interests and requirements. According to a report, Pie is the most widely used
operating system in the android version list.
Features
• Sound amplifier with select to speak options
• Artificial intelligence (AI) compatibility
• Adaptive Battery and Brightness with background restrictions
• Multi-camera support with the external camera compatibility
• New Gesture Navigation and App Actions
• New Screenshot Shortcut key and accessibility menu
• Easier Screen Rotation and edge to edge screens support
• Volume and Sound enhancements
• Selectable Dark Mode
• HDR, HD audio, multiple Bluetooth connections
• Slices and long press to overview selection
• Improved Security features for extra protection
• Digital Wellbeing with app timers, dashboard and do not disturb options
• Android backups and privacy enhancements
• More Notification Information and easier text selection

Er. SANDESH ADHIKARI 29


WEB AND MOBILE APPLICATION DEVELOPMENT

17. Android 10: Android Q


Android version 10 is officially released on September 3, 2019, with enhanced features and
functionalities with higher API levels.
Features
• Support for foldable smartphones with flexible displays
• Dark mode for eyes comfortability
• Navigation control over gesture quicker and intuitive ever
• Sound amplifier with more clear sound
• Smart reply suggestions for all messaging apps
• Live caption for media playing on a smartphone
• Undo app removal
• Better notification control with many options

18. Android 11: (API 30)


Android developers are continually working to provide more advanced applications as per the
user requirements. Most of the developers are searching Android Developer vs Web
Developer to choose a trending field.
The following are the new features that you will experience in the new android 11 that is going
to release and will be the latest version in the android version list.

Er. SANDESH ADHIKARI 30


WEB AND MOBILE APPLICATION DEVELOPMENT

• Native screen recording


• Muting notifications during video
• Increase touch sensitivity
• Notification History
• Auto revoke app permissions

ANDROID BRIEF:
Android programming is based on Java programming language so if you have basic
understanding on Java programming then it will be a fun to learn Android application
development.

Android is an open source and Linux-based Operating System for mobile devices such
as smartphones and tablet computers. Android was developed by the Open Handset
Alliance, led by Google, and other companies.

Android offers a unified approach to application development for mobile devices which
means developers need only develop for Android, and their applications should be able
to run on different devices powered by Android.
The first beta version of the Android Software Development Kit (SDK) was released
by Google in 2007 where as the first commercial version, Android 1.0, was released in
September 2008.
On June 27, 2012, at the Google I/O conference, Google announced the next Android
version, 4.1 Jelly Bean. Jelly Bean is an incremental update, with the primary aim of
improving the user interface, both in terms of functionality and performance. The
source code for Android is available under free and open source software licenses.
Google publishes most of the code under the Apache License version 2.0 and the rest,
Linux kernel changes, under the GNU General Public License version 2.

Why prefer Android?

Er. SANDESH ADHIKARI 31


WEB AND MOBILE APPLICATION DEVELOPMENT

Feature
1. Beautiful UI
Android OS basic screen provides a beautiful and intuitive user interface.

2. Connectivity
GSM/EDGE, IDEN, CDMA, EV-DO, UMTS, Bluetooth, Wi-Fi, LTE, NFC and
WiMAX.

3. Storage
SQLite, a lightweight relational database, is used for data storage purposes.

4. Media support
H.263, H.264, MPEG-4 SP, AMR, AMR-WB, AAC, HE-AAC, AAC 5.1,
MP3, MIDI, Ogg Vorbis, WAV, JPEG, PNG, GIF, and BMP.

5. Messaging
SMS and MMS

6. Web browser
Based on the open-source WebKit layout engine, coupled with Chrome's V8
JavaScript engine supporting HTML5 and CSS3.

Er. SANDESH ADHIKARI 32


WEB AND MOBILE APPLICATION DEVELOPMENT

7. Multi-touch
Android has native support for multi-touch which was initially made available
in handsets such as the HTC Hero.

8. Multi-tasking
User can jump from one task to another and same time various application can
run simultaneously.

ETC.

The code names of android ranges from A to N currently, such as Aestro, Blender, Cupcake,
Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwitch, Jelly Bean, KitKat,
Lollipop and Marshmallow.

Android application development on either of the following operating systems −

1. Microsoft Windows XP or later version.

2. Mac OS X 10.5.8 or later version with Intel chip.

3. Linux including GNU C Library 2.7 or later.

Android operating system is a stack of software components which is roughly divided into five
sections and four main layers as shown below in the architecture diagram.

Er. SANDESH ADHIKARI 33


WEB AND MOBILE APPLICATION DEVELOPMENT

Interface Definition Language

Linux kernel
At the bottom of the layers is Linux - Linux 3.6 with approximately 115 patches. This provides
a level of abstraction between the device hardware and it contains all the essential hardware
drivers like camera, keypad, display etc. Also, the kernel handles all the things that Linux is
really good at such as networking and a vast array of device drivers, which take the pain out of
interfacing to peripheral hardware.

Libraries
On top of Linux kernel there is a set of libraries including open-source Web browser engine
WebKit, well known library libc, SQLite database which is a useful repository for storage and
sharing of application data, libraries to play and record audio and video, SSL libraries
responsible for Internet security etc.

Android Libraries
This category encompasses those Java-based libraries that are specific to Android development.
Examples of libraries in this category include the application framework libraries in addition
to those that facilitate user interface building, graphics drawing and database access. A
summary of some key core Android libraries available to the Android developer is as follows
− android.app − Provides access to the application model and is the cornerstone of all Android
applications.

android.content − Facilitates content access, publishing and messaging between


applications and application components.

Er. SANDESH ADHIKARI 34


WEB AND MOBILE APPLICATION DEVELOPMENT

android.database − Used to access data published by content providers and includes


SQLite database management classes.

android.opengl − A Java interface to the OpenGL ES 3D graphics rendering API.

android.os − Provides applications with access to standard operating system services


including messages, system services and inter-process communication.

android.text − Used to render and manipulate text on a device display.

android.view − The fundamental building blocks of application user interfaces.

android.widget − A rich collection of pre-built user interface components such as


buttons, labels, list views, layout managers, radio buttons etc.

android.webkit − A set of classes intended to allow web-browsing capabilities to be


built into applications.

Having covered the Java-based core libraries in the Android runtime, it is now time to turn our
attention to the C/C++ based libraries contained in this layer of the Android software stack.

Android Runtime
This is the third section of the architecture and available on the second layer from the bottom.
This section provides a key component called Dalvik Virtual Machine which is a kind of Java
Virtual Machine specially designed and optimized for Android.

The Dalvik VM makes use of Linux core features like memory management and
multithreading, which is intrinsic in the Java language. The Dalvik VM enables every Android
application to run in its own process, with its own instance of the Dalvik virtual machine.

The Android runtime also provides a set of core libraries which enable Android application
developers to write Android applications using standard Java programming language.

Application Framework
The Application Framework layer provides many higher-level services to applications in the
form of Java classes. Application developers are allowed to make use of these services in their
applications.

The Android framework includes the following key services −

Activity Manager − Controls all aspects of the application lifecycle and activity stack.

Content Providers − Allows applications to publish and share data with other applications.

Resource Manager − Provides access to non-code embedded resources such as strings, color
settings and user interface layouts.

Er. SANDESH ADHIKARI 35


WEB AND MOBILE APPLICATION DEVELOPMENT

Notifications Manager − Allows applications to display alerts and notifications to the user.

View System − An extensible set of views used to create application user interfaces.

Applications
You will find all the Android application at the top layer. You will write your application to be
installed on this layer only. Examples of such applications are Contacts Books, Browser,
Games etc.

ADVANTAGES OF ANDROID OPERATING SYSTEM

Open Ecosystem

Android has a lot of app stores and one of them is in the shape of Google Play (the official
app store provided by Google), which comes as standard on almost every smartphone and
tablet in order for users to find and download new software.

Customizable UI

Google’s been working hard to make Android’s user interface (UI) as flexible and customizable
as possible. In doing so Google’s loaded Android with a host of customizable widgets. These
can be used anywhere in UI and they offer updates or shortcuts to a variety of services, such as
email, calendar, and massages etc.

Open Source

The Android operating system allows the developers and hardware manufacturers to make
changes to the operating system’s core software. This allows the companies to make changes
in the OS to work in very specific industries.

Innovations Reach the Market Quicker

Android platform has a proven track record of supporting the latest cutting-edge ideas. While
casual apps still seem to appear on almost every operating system at the same time, the bigger
hardware innovations almost start at Google.

Customized Roms

There are a lot of third-party apps that give you advanced features on Android, one of the best
things is that people can use it, modify it all over, and install custom versions instead of the
one that comes with your phone. It will allow you a lot of system-level tweaks that you would
not be able to get this easily on any other OS like Windows or IOS.

Affordable Development

Er. SANDESH ADHIKARI 36


WEB AND MOBILE APPLICATION DEVELOPMENT

You can easily get your own app out in the android market and you don’t need to pay big
development fees. The application environments are free of charge and you can save a lot of
money and there is no limit which means that if you want to make more than one app, you can
do that without any problems.

APP Distribution

With iOS apps, you need to use the Apple App Store. With Android apps, you don’t need any
of that. Just publish the app where you wish. There’s no “empire” looking over your shoulder.
There are a lot of third-party stores and you can publish your app very easily.

Affordable

Since Android OS is affordable to buy so most of the customers love to buy android phones
because of the low price of android phones. iOS and windows phones are more expensive as
compared to android phones.

DISADVANTAGES OF ANDROID OPERATING SYSTEMS


Less memory storage

Android supports external storage memory but due to the small internal system storage it is
very difficult for an android user to download heavy applications or work online with game
like applications.

Automatic closing of Apps/Games

The main drawback of Android Operating system is that large apps are forced by OS to close
and it is very annoying for the android user.

Data connection

Android apps are processing most of the time in the background and leads to data connection
problems.

Battery life

Android apps are processing most of the time in the background and leads to the battery
problems.

INTRODUCTION TO ANDROID DEVELOPMENT TOOLKIT

Android is a development tool that lets you perform these tasks: Manage Android Virtual
Devices (AVD) Create and update Android projects. Update your sdk with new platform
addons and documentation.
Er. SANDESH ADHIKARI 37
WEB AND MOBILE APPLICATION DEVELOPMENT

Android App Development Tools & Software


1. Android Studio.
2. Android Debug Bridge (ADB)
3. Android Virtual Device (AVD) Manager.
4. Eclipse.
5. Fabric.
6. FlowUp.
7. GameMaker: Studio.
8. Genymotion.

1. Android Studio
There’s no talking about android app development without the Android Studio. It’s the most
basic tool for Android developers. Created by Google in 2013, it has pretty much become the
standard software for Android Developers. It’s a great tool because it has the support of Google
as well as a large community of developers.

2. Android Debug Bridge (ADB)


Android Debug Bridge is included in Android Studio and it’s basically a line of communication
between Android devices and other computers that developers use for QA and testing purposes.
Android Developers can connect their Android device to their computer and make necessary
changes to both devices at the same time.

3. Android Virtual Device (AVD) Manager


Another great feature of Android Studio is the AVD. This is an emulator that will run your
Android app on your computer so that you have a better inside into what your code looks like.
It’s great for actually seeing the work you’ve done and making any adjustments as needed.

4. Eclipse
Next up on the list we have Eclipse. Before Android Studio came around, Eclipse was the main
tool for Android development. As of right now, Google doesn’t support this software but some
developers still use it to build Android apps as well as other apps. Eclipse is still a pretty useful
tool, especially for developing cross-platform applications, and it supports a variety of
programming languages.

Types of Android Application Development Kits


1. Android Software Development Kit (SDK)
2. Android Native Development Kit (NDK)
Its libraries are written in C, C++ & other compiler languages & it can be installed by
developers using the Android Native Development Kit. Android NDK classes can be
called from Java (to be precise).
3. Android Open Accessory Development Kit (OAK)
The Android Open Accessory Development Kit has been provided to developers from
Android 3.1 versions and above which allows USB hardware to interact with
Android-powered phones when it is primarily in the “Accessory Mode”. The so-called
as the connected accessory acts as a USB host & the device acts as a USB device in
Er. SANDESH ADHIKARI 38
WEB AND MOBILE APPLICATION DEVELOPMENT

this scenario. OADK allows to detect Android devices that are in “Accessory Mode”
only (& not in any other mode).

Developer Tools

The android developer tools let you create interactive and powerful application for android
platform. The tools can be generally categorized into two types.

1. SDK tools

SDK tools are generally platform independent and are required no matter which android
platform you are working on. When you install the Android SDK into your system,
these tools get automatically installed.
• Provides the Java framework classes
• Compiles to java bytecode
• Class framework is updated with every OS release

1. android
This tool lets you manage AVDs, projects, and the installed components of the SDK

2. ddms
This tool lets you debug Android applications

3. Draw 9-Patch
This tool allows you to easily create a NinePatch graphic using a WYSIWYG editor

4. emulator
This tools let you test your applications without using a physical device

5. mksdcard
Helps you create a disk image (external sdcard storage) that you can use with the
emulator

6. proguard
Shrinks, optimizes, and obfuscates your code by removing unused code

7. sqlite3
Lets you access the SQLite data files created and used by Android applications

8. traceview
Provides a graphical viewer for execution logs saved by your application

Er. SANDESH ADHIKARI 39


WEB AND MOBILE APPLICATION DEVELOPMENT

9. Adb
Android Debug Bridge (adb) is a versatile command line tool that lets you communicate
with an emulator instance or connected Android-powered device.

2. Platform tools

The platform tools are customized to support the features of the latest android platform.
• runs and debugs apps from your dev machine

The platform tools are typically updated every time you install a new SDK platform.
Each update of the platform tools is backward compatible with older platforms.

Some of the platform tools are listd below −

1) Android Debug bridge (ADB)

2) Android Interface definition language (AIDL)

3) aapt, dexdump , and dex e.t.c

The Android SDK Platform Tools are a separately downloadable subset of the full SDK,
consisting of command-line tools such as adb and fastboot.

Er. SANDESH ADHIKARI 40


WEB AND MOBILE APPLICATION DEVELOPMENT

CHAPTER – 5
Introduction To Web Applications

A web application is a client-side and server-side software application in which the client runs
or request in a web browser. Common web applications include email, online retail sales, online
auctions, wikis, instant messaging services and more.

A web application (or web app) is application software that runs on a web server, unlike
computer-based software programs that are run locally on the operating system (OS) of the
device. Web applications are accessed by the user through a web browser with an active
network connection.

These applications are programmed using a client–server modeled structure—the user


("client") is provided services through an off-site server that is hosted by a third-party.

Its frontend is usually created using languages like HTML, CSS, Javascript, which are
supported by major browsers.

History of web Application:


A web application (or web app) is application software that runs on a web server, unlike
computer-based software programs that are run locally on the operating system (OS) of the
device. Web applications are accessed by the user through a web browser with an active
network connection. These applications are programmed using a client–server modeled
structure—the user ("client") is provided services through an off-site server that is hosted by a
third-party. Examples of commonly-used web applications include: web-mail, online retail
sales, online banking, and online auctions.
The first workable prototype of the Internet came in the late 1960s with the creation of
ARPANET, or the Advanced Research Projects Agency Network. Originally funded by the
U.S. Department of Defense, ARPANET used packet switching to allow multiple computers
to communicate on a single network.
The year 1995 is a crucial year in the era of the Internet. Netscape Communications presented
JavaScript, a client-side scripting language that enables programmers to improve the user
interface with the dynamic elements. JavaScript made the Internet faster and more productive
because the data was no longer sent to the server to generate the whole web page.
Er. SANDESH ADHIKARI 41
WEB AND MOBILE APPLICATION DEVELOPMENT

In 1996, Macromedia Flash was introduced. It was also a revolutionary innovation that made
the Web 'brighter' and interactive. This vector animation player enabled programmers to enrich
web pages with animation. This multimedia software platform works with animation, different
types of browser games, vector graphics and Internet and mobile applications.
In 1999, the concept of web application appeared in Java language. Later on, in 2005, Ajax was
introduced by Jesse James Garrett in his article "Ajax: A New Approach to Web Application".
This complex of web development techniques enabled programmer to compose asynchronous
web apps.

Platforms used for web applications


1. WordPress
WordPress is a content management system (CMS) that allows you to host and build
websites. WordPress contains plugin architecture and a template system, so you can
customize any website to fit your business, blog, portfolio, or online store.
2. PHP
PHP files can contain text, HTML, CSS, JavaScript, and PHP code. PHP code is executed
on the server, and the result is returned to the browser as plain HTML. PHP files have
extension ".php".
• PHP can generate dynamic page content
• PHP can create, open, read, write, delete, and close files on the server
• PHP can collect form data
• PHP can send and receive cookies
• PHP can add, delete, modify data in your database
• PHP can be used to control user-access
• PHP can encrypt data

3. AngularJS. AngularJS Framework By Google It was first released in 2009, and


completely rewritten in 2016.
AngularJS Framework By Google It was first released in 2009, and completely rewritten in
2016. Angular.JS is a powerful JavaScript-based development framework. It is an open
source framework. This Framework is used by companies like Google, Paypal, Netflix,
Upwork, Microsoft and other Giants.
AngularJS can be Considered the best Front-end framework for a web application. Angular
JS is great for Video Streaming Apps, Travel Apps, Weather Apps, eCommerce, Mobile
Commerce, Social Apps, User-Review Applications. It is used to create dynamic web
applications.
4. ASP.NET. Asp.net was Established in the year 2002.
Asp.net was Established in the year 2002. It is the most Popular Framework built by
Microsoft. Asp.net is Perfect Web app development platform for building desktop and
mobile applications. Asp.Net is very useful for creating Dynamic and scalable web
applications.
5. Ruby on Rails. ROR framework written in the Ruby language.
ROR framework written in the Ruby language. Ruby on Rails is an open-source web
application framework. Rails help you build websites. It comes with a large pool of

Er. SANDESH ADHIKARI 42


WEB AND MOBILE APPLICATION DEVELOPMENT

reference library and great tools to create web apps. Ruby is growing very quickly. A few
big names that used Ruby on Rails Basecamp, GitHub, Shopify, Airbnb,
6. Node
Node.js is the best when you build a highly efficient website. It is a very powerful
JavaScript-based platform. You can develop web applications like video streaming sites,
single page applications, and many other applications. As technology is changing
developers are moving to adopt convenient frameworks for their web development needs.
7. React
React, Known as ReactJS an open source Javascript library, that is used to create websites.
React.JS is maintained by Facebook. Reactjs helps to build SEO friendly and
highperformance Web applications. React is definitely worthy especially if you are working
on a single page application. you can make web apps user-friendly, responsive and super
fast with ReactJs.
Components of web applications
All web-based database applications have three primary components: A web browser (or
client), a web application server, and a database server.
Working
They are basically used in a web-based application that has 3 tier architecture. The position at
which the application server fits in is described below:
Tier 1 – This is a GUI interface that resides at the client end and is usually a thin client (e.g.
browser)
Tier 2 – This is called the middle tier, which consists of the Application Server.
Tier 3 – This is the 3rd tier which is backend servers. E.g., a Database Server.

Web-based database applications rely on a database server, which provides the data for the
application. The database server sometimes also provides business logic in the form of stored
procedures. Stored procedures can offer significant performance advantages, especially in a
multi-tiered architecture.
Three primary components are:

Er. SANDESH ADHIKARI 43


WEB AND MOBILE APPLICATION DEVELOPMENT

1) Web Browser
A web browser (also referred to as an Internet browser or simply a browser) is application
software for accessing the World Wide Web or a local website. When a user requests a web
page from a particular website, the web browser retrieves the necessary content from a web
server and then displays the page on the user's device.
Working
The purpose of a web browser is to fetch content from the Web or from a local storage
device and display it on a user's device.
This process begins when the user inputs a Uniform Resource Locator (URL), such as
https://bhanudaya.edu.np/, into the browser. Virtually all URLs on the Web start with either
http: or https: which means the browser will retrieve them with the Hypertext Transfer
Protocol (HTTP). In the case of secure mode (HTTPS), the communication between the
browser and the web server is encrypted for the purposes of security and privacy. Once a
web page has been retrieved, the browser's rendering engine displays it on the user's device.
This includes image and video formats supported by the browser.

Difference between Web Browser and Web Server


Web Browser Web Server

Web Browser is an Application


program that displays a World wide
web document. It usually uses the
internet service to access the Web server is a program or the computer
document. that provide services to other programs
called client.

The Web browser requests the The Web server accepts, approve and
server for the web documents and respond to the request made by the web
services. browser for a web document or services.

The web browser act as an interface


between the server and the client and The web server is a software or a system
displays a web document to the which maintain the web applications,
client. generate response and accept clients data.

Er. SANDESH ADHIKARI 44


WEB AND MOBILE APPLICATION DEVELOPMENT

The web browser sends an HTTP The web server gets HTTP requests and
request and gets an HTTP response. send HTTP responses.

Er. SANDESH ADHIKARI 45


WEB AND MOBILE APPLICATION DEVELOPMENT

Web Browser Web Server

There exist three types of processing


Doesn’t exist any processing model models for web server i.e Process-based,
for the web browser. Thread based and Hybrid.

Web browser stores the cookies for Web servers provide an area to store and
different websites. organize the pages of the website.

The web server can be a remote machine


placed at the other side of your network or
even on the other end of the globe, or it is
The web browser is installed on the your very own personal computer at home.
client computer.

Web Server

2) Application server
An application server is a modern form of platform middleware. It is system software that
resides between the operating system (OS) on one side, the external resources (such as a
database management system [DBMS], communications and Internet services) on another
side and the users' applications on the third side.

Er. UDAY ADHIKARI 46


WEB AND MOBILE APPLICATION DEVELOPMENT

Application servers consist of:


• web server connectors,

An application server is a server that hosts applications.


Application server frameworks are software frameworks for building application servers.
An application server framework provides both facilities to create web applications and a
server environment to run them.

• computer programming languages,


• runtime libraries,
• database connectors, and
• the administration code needed to deploy, configure, manage, and connect these
components on a web host.
3) Database Server
Database servers are used to store and manage databases that are stored on the server and to
provide data access for authorized users. This type of server keeps the data in a central location
that can be regularly backed up. It also allows users and applications to centrally access the
data across the network. A large number of the databases used in your organization can be kept
on one server or a group of servers that are specifically configured to protect data and service
client requests.
Users access a database server either through a "front end" running on the user's computer –
which displays requested data – or through the "back end", which runs on the server and
handles tasks such as data analysis and storage.

Er. UDAY ADHIKARI 47


WEB AND MOBILE APPLICATION DEVELOPMENT

Er. UDAY ADHIKARI 48

You might also like