M Tech Notes
M Tech Notes
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:
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 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.
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.
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.
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.
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
• 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.
• 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.
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
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
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.
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
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:
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.
• 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
Mobile virtualization:
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.
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.
Smartphones power usage keeps on increasing therefore, a good battery backup is very
essential.
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.
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
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.
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
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.
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.
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 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.
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.
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.
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.
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.
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.
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
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.
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.
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.
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
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.
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.
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
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.
The Android SDK Platform Tools are a separately downloadable subset of the full SDK,
consisting of command-line tools such as adb and fastboot.
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.
Its frontend is usually created using languages like HTML, CSS, Javascript, which are
supported by major browsers.
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.
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:
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.
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 sends an HTTP The web server gets HTTP requests and
request and gets an HTTP response. send HTTP responses.
Web browser stores the cookies for Web servers provide an area to store and
different websites. organize the pages of the website.
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.