SlideShare a Scribd company logo
1 of 37
Download to read offline
RAMCO INSTITUTE OF TECHNOLOGY
Department of Computer Science and Engineering
Academic Year: 2019- 2020 (Even Semester)
Degree, Semester & Branch: VI Semester B.E. CSE.
Course Code & Title: CS8601 Mobile Computing.
Name of the Faculty member: Dr.M.Kaliappan, Associate Professor/CSE
--------------------------------------------------------------------------------------------------------------
UNIT V MOBILE PLATFORMS AND APPLICATIONS
Mobile Device Operating Systems – Special Constrains & Requirements – Commercial
Mobile Operating Systems – Software Development Kit: iOS, Android, BlackBerry,
Windows Phone – M-Commerce – Structure – Pros & Cons – Mobile Payment System –
Security Issues
--------------------------------------------------------------------------------------------------------------
Credit:
1. Prasant Kumar Pattnaik, Rajib Mall, ―Fundamentals of Mobile Computing‖,
PHI Learning Pvt.Ltd, New Delhi – 2012
2. Credit: Internet resources
--------------------------------------------------------------------------------------------------------------
Objective:
 To enable the students to gain knowledge on different mobile platforms and
application development.
Outcome:
 Develop a mobile application using android/iOS/Windows SDK
5.1 Operating system responsibilities in Mobile devices
• Managing resources
• Providing different interfaces
• Managing resources
– OS of a mobile device efficiently utilize the resources by multiple task
– Resources may be processor, memory, files , camera, speaker, keyboard and
screen
– A mobile device runs multiple applications at the same time and an
application in turn run multiple tasks. A task has multiple threads.
– Applications: voice communication, SMS, E-Mail, music play, recording,
browsing
– Ex: A person may listen to music, at the same time he might answer
incoming call and SMS arrive at the same time.
• Providing different interfaces
– Mobile operating system provides interface to user of the device, networks
and other devices.
– The important interfaces like data, control, voice communication with base
stations using different protocols.
– Mobile OS takes care of recognizing inputs from key board, sending outputs
to display screen.
– Interfacing with other mobile devices, computers and printers.
– Popular Mobile OS
• iOS, Android, windows phone, symbian, Blackberry, Bada, Palm
OS
5.2 Mobile OS
• A mobile operating system is an operating system for phones, tablets, smart
watches, or other mobile devices.
• Operating system is structured into a kernel layer and shell layer
• Shell layer provides facilities for user interaction with kernel
• Kernel executes in the supervisor mode and run privileged instruction
• Kernel could not run in the user mode.
• During booting, kernel gets loaded first, and continuous to remain in the main
memory.
• Kernel is called memory resident part of an operating system.
• Kernel is responsible for operating system services like interrupt service, memory
management , processor, files etc
• Two type of kernel design (8 Marks)
• Monolithic kernel design
• Micro kernel design
5.2.1 Monolithic kernel design
– A monolithic kernel is an operating system software framework that holds
all privileges to access input/output devices, memory, hardware interrupts
and the CPU stack.
– Kernel consists the entire Operating system code
– In supervisor mode, OS runs securely and efficiently.
– Problem:
• It make the kernel massive, non-modular, hard to maintain, extend
and configure
• Monolithic OS generate more errors and bugs
– Example: VMS, Linux,UNIX, OS/360, OpenVMS, Multics, BSD(Berkeley
Software Distribution), MS-DOS and Mac OS
Figure 5.1: Monolithic kernel design
5.2.2 Micro kernel
– Microkernel is the minimum amount of software that can provide the mechanisms
needed to implement an operating system (OS). These mechanisms include memory
management, thread management, and inter-process communication.
– Micro kernel reduce the size of the kernel code
– Only basic hardware dependent functionalities and a few critical functions are
implemented in kernel code. All other functionalities are implemented in user
mode.
– It easier to port, extend, maintain the operating system
– The kernel code is very difficult to debug compared to application program. The
bug in the kernel code can crash the system even it does not bring down the entire
system. This is the one reason as why the microkernel is expected to more
reliable than monolithic kernel design
– Example
– QNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Integrity, PikeOS, HURD,
Minix, and Coyotos
Figure 5.2: Monolithic kernel design
Comparison of microkernel and monolithic kernel (2 Marks)
MICROKERNEL MONOLITHIC KERNEL
In microkernel user services and kernel,
services are kept in separate address space
In monolithic kernel, both user services and
kernel services are kept in the same address
space.
smaller in size. larger than microkernel.
Slow execution. Fast execution.
easily extendible. hard to extend.
If a service crashes, it does effect on
working of microkernel.
If a service crashes, the whole system crashes
in monolithic kernel.
QNX, Symbian, L4Linux, Singularity,
K42, Mac OS X, Integrity, PikeOS,
HURD, Minix, and Coyotos.
Linux, BSDs (FreeBSD, OpenBSD, NetBSD),
Microsoft Windows (95,98,Me), Solaris, OS-9,
AIX, HP-UX, DOS, OpenVMS, XTS-400
5.3 Special Constraints and Requirements (8 Marks)
• Mobile device is powered by limited energy stored in tiny battery
• An important constraints
– Avoiding complex computations
– Entering into low power sleep mode as soon as possible
– Mobile OS need to be loaded much faster than desktop
– Kernel of mobile OS need to be very small size
5.3.1 Special Constraints
 Limited Memory
 Limited Screen size
 Miniature keyboard
 Limited processing power
 Limited battery power
 Limited and fluctuating bandwidth of the wireless medium
• Limited Memory
• A Mobile device has less permanent storage than desktop or laptop
• To cope with the limited memory, the mobile OS must be small and
provide rich functionalities for user needs
• The kernel size need to be small
• Limited Screen size
• Size of the display screen reveals the portable
• New innovative interface need to be designed to overcome the issue
• Minimize the user inconvenience
• EX: interfaces suit individual preferences switch between menu and icon
interface
• Miniature keyboard
• Mobile devices are either provided with small key pad or display screen
used as keyboard
• In arrangement, typing the documents and entering the string command is
very difficult.
• Provision with facility of word completion prompts and free form hand
writing recognition
• Limited processing power
• Modern mobile device incorporate ARM based processor.
• The processors are power efficient, powerful and cheaper
• The size of the processor is also restricted
• To overcome this, Mobile OS provide limited functionalities used for
operation of mobile.
• Limited battery power
• Due to restriction of the size and weight, mobile device has small battery
• In spite of small memory, it supports long talk time without recharging
frequently.
• It is excepted to minimize the power consumption
• Power consumption is achieved by putting the processor and screen into
sleep mode within a few seconds of inactivity.
• Limited and fluctuating bandwidth of the wireless medium
• Mobile OS need to be run complex protocol due to its mobility and wireless
medium
• Wireless medium is directly affected to atmosphere noise that cause bit error
rates
• Bandwidth may fluctuate randomly due to mobility, noise
5.3.2 Special Service Requirements
• Support for specific communication protocol
• Support for a variety of input mechanisms
• Compliance with open standards
• Extensive library support
• Support for specific communication protocol
• Mobile devices are connected to base station, computers and other devices
that require communication support.
• Communication protocols used for communications with help of
communication technologies(1G, 2G, 3G,4G)
• Mobile device need to be support two or more communication technology
• TCP/IP and WLAN need to supported for communication with other device
and computers.
• Web browsing as well as communication with other devices such as pen
drive, head phone, USB , Blue tooth and infrared connections are preferable.
• Support for a variety of input mechanisms
• A miniature keyboard forms the user input mechanism for
inexpensive mobile device
• Smart phone support QUERY keyboard or stylus based input
mechanism along with the hand writing recognition
• Compliance with open standards
• To facilitate the third party software development, as well as to
reduce the cost of development by manufacturer, the OS adhere open
standard
• Smart phone come with different shapes, size, and screen, therefore,
the user interface and networking need to be designed keeping these
diversities
• Extensive library support
• The cost effective development of third party applications require
extensive library
• The minimum expected library supports include Email, SMS, MMS,
Bluetooth, multimedia, and GSM/GPRS
5.3.3 Mobile APPLICATION DEVELOPMENT KIT (16 Marks)
• Mobile platform (2 Marks)
– A mobile platform in a mobile device manages the software and hardware
resources of the device
– Mobile platforms in Market
• Android
• iOS (iPhone, iPad, iPod, and Touch)
• Windows Phone
• Windows Mobile
• BlackBerry
• Symbian
• Bada
• WebOS
• Brew
• MeeGo
5.3.1 Android (2 Marks)
Android is a software stack for mobile devices that includes an operating system,
middleware and key applications.
Figure 5.3: Open Handset Alliance
Open Handset Alliance, a group of 84 technology and mobile companies who
have come together to accelerate innovation in mobile and offer consumers a richer, less
expensive, and better mobile experience
Why Android? (2 Marks)
Open
• Android is built on the open Linux Kernel.
• Android is open source.
• Can be liberally extended to incorporate new cutting edge technologies as
they emerge.
Fast & easy application development
• Android provides access to a wide range of useful libraries and tools that
can be used to build rich applications.
5.3.1.1 Android architecture or Software stack(16 Marks)
Figure 5.4: Android architecture
The Android software stack generally consists of a Linux kernel and a collection of C/C++
libraries that is exposed through an application framework that provides services, and
management of the applications and run time.
5.3.1.1.1 Linux Kernel
Android was created on the open source kernel of Linux. One main reason for choosing
this kernel was that it provided proven core features on which to develop the Android
operating system. The features of Linux kernel are:
1. Security:
The Linux kernel handles the security between the application and the system.
2. Memory Management:
It efficiently handles the memory management thereby providing the freedom to
develop our apps.
3. Process Management:
It manages the process well, allocates resources to processes whenever they need
them.
4. Network Stack:
It effectively handles the network communication.
5. Driver Model:
It ensures that the application works. Hardware manufacturers can build their drivers
into the Linux build.
5.3.1.1.2 Libraries:
• Including a set of C/C++ libraries used by components of the Android system
• Exposed to developers through the Android application framework.
1. The Android runtime:
Providing environment on which every Android application runs
• Each Android application runs in its own process, with its own instance of
the Dalvik VM.
• Dalvik has been written such that a device can run multiple VMs efficiently.
Register-based virtual machine
Figure 5.5: Android runtime
2. Open GL(graphics library):
This cross-language, cross-platform application program interface (API) is used to
produce 2D and 3D computer graphics.
3. WebKit:
This open source web browser engine provides all the functionality to display web
content and to simplify page loading.
4. Media frameworks:
These libraries allow you to play and record audio and video.
5. Secure Socket Layer (SSL):
These libraries are used for Internet security.
5.3.1.1.3 Android Runtime:
Dalvik Virtual Machine (2 Marks)
It provides one of the key components which is called Dalvik Virtual Machine. It
acts like Java Virtual Machine which is designed especially for Android. Android uses its
own custom VM designed to ensure that multiple instances run efficiently on a single
device.
5.3.1.1.4 Application Framework (2 Marks)
The Android team has built on a known set proven libraries, built in the background, and
all of it these is exposed through Android interfaces. These interfaces warp up all the
various libraries and make them useful for the Developer.
Table 5.1: Android application framework
Feature Role
View System Used to build an application, including lists, grids, text
boxes, buttons, and embedded web browser
Content
Provider
Enabling applications to access data from other
applications or to share their own data
Resource
Manager
Providing access to non-code resources (localized strings,
graphics, and layout files)
Notification
Manager
Enabling all applications to display customer alerts in the
status bar
Activity
Manager
Managing the lifecycle of applications and providing
a common navigation back stack
5.3.1.1.5 Applications:
Android applications can be found at the topmost layer. At application layer we
write our application to be installed on this layer only. Examples of applications are
Games, Messages, and Contacts etc.
5.3.1.1.6 Linux Kernel
• Relying on Linux Kernel 2.6 for core system services
 Memory and Process Management
 Network Stack
 Driver Model
 Security
• Providing an abstraction layer between the H/W and the rest of the S/W stack
5.3.1.1.7 Android application components (2 Marks)
Figure 5.6: Android Application Components (8 Marks)
Activity (2 Marks)
• Every user interface in an android mobile app is termed as an activity.
• Also termed as the presentation layer of the mobile
application.
• Each activity contains multiple UI components that come together to populate the
screen.
• These UI components display information to end user, take user inputs and also
generate events.
• Each activity is created by extending Activity class present in android.app.Activity
package
• Activity life cycle (2 Marks)
• An activity of android mobile app can take up following 4 states
• Active: An activity which is currently in focus, either displaying
information to user or user is providing input is active activity.
• Paused: An activity which is currently in the view but out of focus is
paused activity. This happens when another activity overlaps the view for
this activity partially and takes the focus away.
• Stopped: An activity which is not visible is termed as stopped activity. This
activity is still present in the memory and can be restarted at any point of
time
• Inactive: A stopped activity when is taken out of the memory is becomes
inactive.
Content provider (2 Marks)
Content providers are used for reading and writing data that are either private to an
application or shared across the application. By using the content provider, an application
can query or modify the stored data.
Ex: Contact
Service (2 Marks)
A service is a component that runs in the background to perform long-running
operations without needing to interact with the user interface.
Example: Alarm clock, playing audio in background
Broadcast receiver (2 Marks)
Broadcast Receivers respond to broadcast announcement from other applications or
from the system itself. These announcements are sometime called events or intents.
Example: a battery monitoring application broadcast that the battery is low. Based on this,
the music player reduces the volume or the screen display may be dimmed.
Intent (2 Marks)
• Android allows one activity to interact with another activity.
• The first activity can pass information (data) to another activity and the second
activity can then work with this information.
• The sharing of information is done as a key value pair concept. Android uses the
concept of intents for achieving this
5.3.1.1.8 Features of Android OS (2 Marks)
• The application framework helps in enabling reuse and replacement of individual
components.
• The Dalvik virtual machine is highly optimized for mobile devices.
• The integrated browser is based on the open-sourced WebKit engine.
• The OS has optimized graphics by custom-2D graphics library.
• 3D graphics uses OpenGL ES 1.0 specification.
• SQLite can be used for structured data storage.
• The OS supports standard media formats.
• The application has EDGE, 3G, Bluetooth, and WiFi.
• The application has a compass, a camera, a GPS, and an accelerometer
5.3.2 Android software Development Kit (SDK) (8 Marks)
• Class Library and Developer Tools
• dx – Dalvik Cross-Assembler
• aapt – Android Asset Packaging Tool
• adb – Android Debug Bridge
• ddms – Dalvik Debug Monitor Service
• Emulator and System Images
• Documentation and Sample Code
Eclipse IDE + ADT (Android Development Tools)
• Reduces Development and Testing Time
• Makes User Interface-Creation easier
• Makes Application Description Easier
• Now everything packed in a single bundle
• Jump start development with single download
• No installation, just extract the zip content
• No internet connection needed, copy from your friends
• Android SDK Manager
•The SDK manager is a tool that allows to view, install, update, and uninstall
packages for the Android SDK
Figure 5.7: Android SDK manager
• Android Virtual Device
•An Android Virtual Device (AVD) is a device configuration that runs on the
Android Emulator. It provides virtual device-specific Android Environment
in which we can install & test our Android Application. AVD Manager is a
part of SDK Manager to create and manage the virtual devices created
•Configuration profile for Emulator instance
•Create different AVDs for different screen resolutions
Figure 5.8: Android Virtual Device
Main Activity.java
package com.example.helloworld;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
Android manifest.xml (2 Marks)
• Contains the configuration details to install the application in the device.
• Contains the information about application components, class names, type of events
in the application and permissions (eg. permissions to access internet).
5.3.3 iPhone Operating System(iOS) (16 Marks)
• iOS is the mobile OS in iPhone, iPad, and iPod touch devices.
• iOS was originally developed for iPhone but later extended to support other Apple
mobility devices.
• iPhone is believed to be a revolution in mobile phones market because of its unique
UI and deep integration with the web
5.3.3.1 iOS – iPhone Architecture
• iOS acts as an intermediate level between the hardware and the different
applications that appear on the UI.
• Developer-created applications very rarely communicate with the hardware
directly.
• Developer applications communicate with the hardware through well-defined
system interfaces
Figure 5.9: iOS – iPhone Architecture
5.3.3.1.1 Coco touch layer (2 Marks)
• This layer contains the frameworks like UI Kit and Foundation frameworks. Cocoa
Touch also includes other frameworks providing key services for accessing device
features
• UI Kit and foundation framework (2 Marks)
• It provides the basic tools and infrastructure that a developer needs to
develop graphical and event-driven applications in iOS.
• UI Kit framework is an Objective-C framework.
• Every application in iOS uses this framework to implement this core set of
features, which are as follows:
• Application management
• Graphics and UI management
• Event-handling support
• Support for text and web content
• Objects representing system views and controls
• UI Kit supports device-specific features and provides the fundamental
code for building the application, such as the following:
– Accelerometer data
– Built-in camera
– User’s photo library
– Device-specific information
Key features of Cocoa Touch layer (2 Marks)
• Share. Share content with social websites or other entities.
• Action. Perform a simple task with the current content.
• Widget. Provide a quick update or enable a brief task in the Today view of
Notification Center.
• Photo editing. Perform edits to a photo or video within the Photos app.
• Document Picker
• The document picker view controller grants users access to files outside
your application’s sandbox.
• It is a simple mechanism for sharing documents between apps.
• AirDrop
• AirDrop allows users to share photos, documents, URLs, and other
kinds of data with nearby devices.
• Storyboards
• Storyboards are the recommended way to design app’s user interface.
• Storyboards allowed designing entire user interface in one place so that
you can see all views and view controllers.
• Apple Push Notification Service
• Apple Push Notification service provides a way to alert users about new
information, even when your app is not actively running.
• Using this service, you can push text notifications; trigger audible alerts
on user devices at any time.
5.3.3.1.2 Media layer
• The graphics and multimedia technologies in iPhone concentrate on providing the
best multimedia experience on a mobile device. The high-level framework in iOS
helps developers to create advanced graphics and animations quickly.
• Technologies
– Graphics technologies
• High-quality graphics are an important part of all iPhone
applications to render 2D and 3D drawing.
– Core audio
• Core audio generate, record, mix, and play audio in any application.
• Developers can also use core audio interface to use the vibration
feature on the devices that support it.
– OpenAL
• OpenAL is a cross-platform standard for getting 3D audio in
applications.
• Code modules written using OpenAL in iOS can be ported and can
run on any other platform.
– Video technologies
• Full-screen video playback is supported through the media player
framework.
• The framework supports the playback of files with the .mov, .mp4,
.m4v, and .3gp extensions and uses the following compression
standards:
• Video formats
• H.264 baseline profile level 3.0 video
• MPEG-4 Part 2 video (simple profile)
• Audio formats
• Advanced audio coding (AAC)
• Apple Lossless Audio Codec (ALAC)
5.3.3.1.3 Core service layer
• The core-services layer provides the basic fundamental system services that all
developer applications use.
• various frameworks of the core-services layer:
– Address Book
• The address book provides programmatic access to the contacts on a
user’s device.
– Core location
• Core location helps the user in determining the latitude and longitude
of the location of the device.
– Core foundation
• The group of C-based interfaces provides data management and
service features for iPhone applications.
– CFNetwork
• CFNetwork is a high-performance, C-based framework that provides
a set of object-oriented libraries for the users for working with
network protocols such as FTP, HTTP, DNS.
• CFNetwork gives the developer detailed control over the protocol
stack.
• Security
• Security provides an explicit framework that users can use to
guarantee the security of the data that the application manages.
• It provides interfaces for managing public and private keys,
certificates, and trust policies.
• It supports storage of certificates and cryptographic keys in the
keychain, considered as a secure repository for sensitive user data.
• SQLite
– SQLite is a lightweight SQL database library.
– From the application, the user can create local database files.
– The application can manage the tables and records in these
database files.
• XML support
– LibXML2 and libxslt libraries provide support for manipulating
XML content.
– It can transform extensible markup language (XML) content to
hypertext markup language (HTML).
5.3.3.1.4 Core OS layer
– The core-OS layer includes kernel environment, drivers, and basic interfaces of OS.
The kernel is based on Mac, and it is responsible for every aspect of the OS.
– Core OS manages the file system, virtual memory system, threads, network, and
inter-process communication.
– Access to the kernel and drivers is restricted to a limited set of system frameworks
and applications as a security measure.
– Developer application accesses low-level features of the OS through the LibSystem
iOS features (2Marks)
Feature Details
Handset display 480 X 320 px (HVGA) or 960 X 640 px
Database SQLite, lightweight relational database used for data storage
purposes
Connectivity iPhone Supports connectivity technologies including GSM / EDGE,
CDMA, HSDPA 3.6, UMTS, Bluetooth, WiFi
Web Browser Safari browser is used
Java support Not supported
Media support Audio formats: AAC, protected AAC, MP3 VBR, Apple, WAV
etc.,
Video formats: MPEG, M-JPEG
Multitasking Available
Bluetooth Bluetooth 2.1 + EDR wireless technology
Messaging service SMS and MMS are available forms of messaging
5.3.4 iOS Mobile Application Development Kit ( 16 marks)
The iOS SDK is a software development kit developed by Apple Inc. The kit allows
for the development of mobile apps on Apple's iOS operating system.
• iOS is multitasking and runs on different devices (iPhones, iPod Touches, iPads,
and Apple TVs).
• Apple provides an IDE called Xcode.
• Xcode is the IDE used by iOS (and OS X) developers. It does NOT run on MS
Windows.
• Xcode provides an interface to the compiler, editor, debugger, and code profiling
tools
• Launch Xcode
• It presented with the Welcome screen:
• Create a new project
• Connect to a repository
• Learn about using Xcode
• Go to Apple’s Portal
• Go ahead and click on “Create a new project”
• Project template
• There are several predefined templates to help you get started on a new
project
• For now, click on Single View Application
• Project options
• The Product Name is the name of your app
• Company Identifier is your organization name – such as edu.itu (reverse
domain)
• Class Prefix (leave empty)
• Device Family: iPad, iPhone, Universal (Universal means that a single
binary will have screens for iPhone, iPod Touch, and iPads)
• Storyboards
• Automatic Reference Counting
• Include Unit Tests (leave unchecked as we are not using)
• Source control
• Asks for a location for Source Control
• By Default, it will use a local GIT repository
• It keeps track of versions,
• GIT and Subversion are two popular source controls systems
Create view
Xcode generates three new files including HelloWorldViewController.h,
HelloWorldViewController.m and HelloWorldViewController.xib.
select the HelloWorldViewController.xib file, you’ll find a empty view similar to the
below image
• Click the Run button (upper left of the screen)
• The iPad simulator will launch (You can also change this to iPhone if you want)
5.3.5 Windows phone (16 Marks)
• The WP7OS is developed by Microsoft, and it succeeds the Windows Mobile
platform.
• Windows Phone 7 provides a platform that simplifies the design and development
of applications.
• Windows Phone 10 is the latest mobile device
5.3.5.1 Windows phone OS Architecture
• Windows Phone 7.0 utilizes a layered architecture that has a
– Kernel space and a user space.
• Kernel space
– It consists of the following items
• Kernel
• File system
• Graphics rendering
• Windows Phone OS kernel is completely based on Windows
Embedded CE 6.0 as its core.
• It supports up to 32,000 simultaneous processes. Each of these
processes can access up to 1 GB of virtual memory.
• Windows Phone OS is a 32-bit OS, and therefore, it can access up to
4 GB of RAM
Figure 5.10: Windows phone OS Architecture
Runtime on “screen”:
• Silverlight, XNA Framework, and Windows Phone specific features such as various
sensors (accelerometer, GPS, and media options) together combine to provide a
mature environment to build secure, graphically rich applications.
• For Windows Phone, all the development happens in managed code, as the
Silverlight and the XNA frameworks are used.
• This ensures that the managed code runs in a protected sandbox, which in turn
allows a faster development cycle for safe and secure applications.
• The two frameworks of Silverlight and XNA, the common base class library, and
Windows Phone-specific components provide a large number of components for
developers to develop applications
• Silverlight
– Rich Internet application style UIs can be designed using the Silverlight
framework.
– Visual Studio or Expression Blend is used in designing extensible
application markup language (XAML)-based interfaces
• XNA Framework
– Exclusively for game developers Includes software, services, and resources
required for developing on Microsoft gaming platforms
– Provides a complete set of managed APIs for game development
– Allows professional developers to quickly create games on platforms such
as Windows Phone, Windows7, Xbox 360, and Zune HD
– Includes 2D sprite-based APIs supporting rotation, scaling, stretching, and
filtering
– Also includes 3D graphics APIs for 3D geometry, textures, etc.
• Sensors
– A variety of sensors supply data that can be consumed by applications.
– The framework includes sensors for multitouch input, accelerometer
• Media
– Used for building a rich UI that incorporates graphics, animation, and media
– Available for both the Silverlight and the XNA framework developers
– Variety of media formats are supported by managed APIs
– Allow discovery and enumeration of media present on the device and also
supports playback of that media
• Location
– APIs are available to access the physical location information from the
device using Microsoft Location Service.
– Location APIs on the device work along with the location cloud services.
Tools: IDEs
• It used in Windows Phone development are Visual Studio and Expression Blend.
These tools along with related tools and documentation, including the simulator and
the online guides and samples, help the developer for creating, debugging,
deploying, and updating applications.
Cloud services:
• The various cloud services supported in Windows Phone 7 are Windows Azure,
Xbox LIVE services, notification services, location services, and a variety of other
web services.
– These different features allow developers to share data across the cloud.
Windows Phone OS also supports connections to third-party web services.
Portal Services:
• The Windows Phone Marketplace provides robust services, which allow application
developers to register, certify, and market their applications
• The Windows Phone Marketplace is a central location for developers to submit and
get their applications certified.
• It also acts as a centralized location for consumers, from which they can buy or
update their applications
• Registration and validation
– Developers can get started on the App Hub by signing up with a Live ID.
– After successful registration, developers can obtain the tools in a single
download.
• Certification, publishing, and update management
– Applications are submitted in Marketplace in the .xap file format.
– Developers can track the submission status of their application and can also
receive notifications on certification status.
– After an application is certified, it will be published on the Marketplace.
– Developers have the option to set the pricing and also select the markets
(country wise) where they want to publish the application
• Windows Phone Marketplace and billing
– A common place where developers make their applications available for
purchase by consumers
– Supported mode of payment for application includes mobile operator and
credit card billing
• Business intelligence:
– Business intelligence provides developers with information about their
application in Marketplace
OS Versions
Windows Phone 7.5
Windows Phone 7.8
Windows Phone 8
Windows Phone 8.1
Windows Phone 10
5.3.5.2 SDK for windows phone ( 8 marks)
• Developers can download and install the package that will include the necessary
tools required to start developing applications for Windows Phone
– Visual Studio 2010
• IDEs are used for building Windows Phone applications.
• Using the IDE, developers can create Silverlight or XNA Framework
applications that can run on Windows Phone.
• The tool includes the project system, designer, debugger, packager,
and manifest generation.
– Expression blend
• It is used in creating the design of Silverlight-based applications on a
Windows Phone.
• It allows developers to create XAML-based UI for Windows Phone
applications.
• Behaviors for the XAML-based applications can be then
implemented by developers in Visual Studio.
• Windows Phone Emulator
– The Windows Phone Emulator is integrated into the Visual Studio and
Expression blend.
– The tool supports application deployment, debugging, and application
execution.
– Support for the graphics processing unit (GPU) emulation, orientation
change, etc., is available.
• XNA Game Studio
– Extends the Visual Studio tools in supporting the XNA framework
– Used to build games for Microsoft Windows, Microsoft Xbox 360 system,
Microsoft Zune, and Windows Phone
– Managed-code class library in XNA framework contains functionality
targeted specifically at game development tasks
• Samples, documentation, guides, and community
– Documentation, sample code, and applications are available.
– Forums, blogs, and web sites are available for developers for query
clarification and also for sharing information.
– Visual Studio Help system allows developers to update their documentation
sets.
• Developer Tools
– Microsoft Visual Studio 2012 with windows phone 8 SDK - used for
coding purpose
– Microsoft Blend 2012 - used for designing purpose
– Device Emulator
Features Windows Phone 7 (8 Marks)
• Stylish UI that supports gestures and smooth animation
• Cloud service and media integration
• Easy and safe application installation
• Device capabilities such as location awareness, sound recording, camera,
messaging, and multi-touch
5.3.5.4 Native application and cross platform application
5.3.5.4.1 Native application defined in different ways
– an application program that has been developed for use on a particular
platform or device
– a smart phone application that is coded in a specific programming
language, such as Objective C for iOS and Java for Android operating
systems
5.3.5.4.2 Multiplatform / Cross Platform development
A cross-platform application may run on
• Microsoft Windows on the x86 architecture
• Linux on the x86 architecture
• Mac OS X on either the PowePC or x86 based Apple Macintosh systems
• A cross- platform application may run on as many as all existing platforms, or on as
few as two platforms
5.3.5.4.2.1 MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)
MEAP is a comprehensive suite of products and services that enable development of
mobile applications.
Purpose
• MEAPs address the difficulties of developing mobile software by managing the
diversity of devices, networks and user groups at the time of deployment and
throughout the mobile solution’s lifecycle.
• Cross-platform considerations are one big driver behind using MEAPs.
For example, a company can use an MEAP to develop the mobile application once and
deploy it to a variety of mobile devices (including smart phones, tablets, notebooks and
ruggedized handhelds) with no changes to the underlying business logic
5.3.6 M-Commerce (16 marks)
• Any e-commerce done in a Wireless Environment especially via Internet.
• M-Commerce is the buying and selling of goods and services through wireless
handheld devices
• It is the process of paying for Services using a mobile phone or personal organizer
M-Commerce from Customer’s Point of view
• The customer wants to access information, goods and services any time and in any
place on his mobile device.
• He can use his mobile device to purchase tickets for events or public transport, pay
for parking, download content and even order books and CDs.
• He should be offered appropriate payment methods. They can range from secure
mobile micropayment to service subscriptions
M-Commerce from Providers Point of view
• The future development of the mobile telecommunication sector is heading more
and more towards value-added services. Analysts forecast that soon half of mobile
operators’ revenue will be earned through mobile commerce.
• Consequently operators as well as third party providers will focus on value-added-
services. To enable mobile services, providers with expertise on different sectors
will have to cooperate.
• Innovative service scenarios will be needed that meet the customers’ expectations
and business models that satisfy all partners involved
Applications
1. Business-to-Consumer Applications (B2C)
2. Business-to-Business Applications (B2B)
1. Business-to-Consumer Applications (B2C)
B2C is a form of commerce in which products or services are sold by a business firm to a
customer.
Ex: Mobile ticketing
Mobile Applications Marketing, Advertising, and Customer Service
Targeted Advertising
• Using demographic information can personalize wireless services
• Knowing users preferences and surfing habits marketers can send
• User-specific advertising messages
• Location-specific advertising messages
• Mobile Ticketing
• Mobile Ticketing is the process where the customers can order, pay for, obtain
and validate tickets from any location and at any time using Mobile phones
• Tickets can be booked and cancelled on the mobile device with the help of
simple application downloads.
• Delivery of tickets to mobile phones can be done in the form of a SMS or by a
MMS
Business-to-Business Applications (B2B)
B2C is a form of commerce in which products or services are sold by a business firm to a
dealer.
Ex: TV sell it through a dealer.
• Mobile Inventory Management
• Reduces the amount of inventory and cost. It also drastically reduce the
delivery times
• Ordering and delivering Information
• Stock tracking and control
• Supply Chain Management
Structure of M-Commerce
Figure 5.11: Structure of M-Commenrce
• Mobile devices: User specify request with this through internet to M-Commerce
application on the net
• Mobile Middleware-Maps the internet content to mobile that may support variety
of OS. Most handle encryption and decryption.
• Network- Core of M-Commerce and deliver packets to closest access points. Most
are connected as wireless but host is connected with wired. It uses a protocol called
WAP
• Host Computers
Store all Information needed for Mobile Applications
Consists of 3 Major Components
o WEB SERVERS: Interact with the Mobile Client
o DATABASE SERVERS: Store the data
o APPLICATION PRAOGARAM:
 Implements the business Logic of the Mobile Commerce
Terminology and standards
• GPS Satellite-based Global Positioning System
• PDA Personal Digital Assistant handheld wireless
computer
• SMS Short Message Service
• EMS Enhanced Messaging Service
• MMS Multimedia Messaging Service
• WAP Wireless Application Protocol
• Smartphones Internet-enabled cell phones with
attached applications
Pros and cons of M-Commerce (2 marks)
Pros or advantages
• For a small business could benefit from m-commerce.
• Selling a product or service Improving productivity
• Offers many payment options
• Push advertising
• Direct marketing.
• More efficient and extensive service offered.
Cons or Disadvantages
• Expensive cost
• Larger screens won’t be displayed is clear
Slow speed
• Limited for longer message
• Hard way to fill the Data
• Security is not protected
5.3.7 Mobile payment systems (16 marks)
• Mobile payments are a natural evolution of E-payment schemes. A mobile
payment (or payment) may be defined as initiation, authorization and confirmation
of a financial transaction using a mobile device. Mobile devices include phones,
PDAs, and any other device that connects to a mobile network for making
payments.
• A mobile device can also be used for payments of bills (especially utilities and
insurance premiums) with access to account-based payment instruments such as
electronic funds transfer, Internet banking payments, direct debit and electronic bill
presentment.
• An important issue which influences the establishment of the mobile payment
procedure is the technical infrastructure needed on the customer's mobile phone and
the familiarity of the customer with the rutty gritty procedures. Even a sophisticated
technology may fail if the customer is not able to handle it with ease on his specific
smartphone.
• On the other hand, simple procedures based on simple message exchange via short
messaging services (SMS) may prove more successful. Some other procedures may
integrate two or more solutions. It is true that M-payments are still in their infancy.
• Some important problems dogging the M-payment schemes are those of Security,
privacy and guarding against frauds.
• The challenges for providing secure transactions are many and range from physical
theft of mobile device which can be subsequently used for fraudulent payments.
• The M-payment solution are still being developed with standard defined an
individual business segments. The other interesting areas related to M-commerce
payment not mentioned in this text are the issues of standardization and
interoperability in the following section. We discuss the important types of mobile
payment schemes.
5.3.7.1 Mobile payment schemes
Three popular types of M-payment schemes are currently being used:
a) Bank account based
b) Credit card based
c) Micropayment
In each of these approaches a third party service provider (bank, Credit Card Company
or Telecom Company) makes a payment on a customer's behalf. An important question that
needs to be answered question that needs to be answered is that since the third party incurs
an overhead in making the payment, how it would recover the cost. First, the service
provider may require pre-payment of this fund. A service provider may charge a small
amount as service charge, which can decrease with increasing customer base.
A) Bank account based M-payment
In this scheme, the bank account of the customer is linked to his mobile phone
number. When the customer makes an m-payment to a vendor through Bluetooth or
wireless LAN connectivity with the vendor's machine, the bank account of the
customer is credited to the vendor's account.
mChek -a new payment scheme (2 marks)
• mChek (Dahiberg et al,2007) is a new payment system that links a debit or
credit card or a bank account ,to a mobile phone, allowing one to make
payments from the mobile phone .
• Once registers, a user can pay his phone bills, transfer talk time to a friend's
account, book tickets for flights, movies, pay water bills, electric bills, etc, from
the mobile with the help of simple instructions.
• This scheme has a tie-up with Airtel, for example, which allows Airtel
subscribers to download mChek application which provides simple graphic
interface to use mchek.
• There are no charges for downloading as well as using mChek as of now.
B) Credit card based M-payment
• In the credit card based M-payment, the credit card number is linked to the
mobile phone number of the customer.
• When the customer makes an M-payment transaction with a merchant, the
credit card is charged and the value is credited to the merchant's account.
• Credit card based solutions have a limitation especially in India. Currently, the
penetration level of credit card is rather low, in India but is expected to grow
substantially in the coming years.
C) Micropayment (2 marks)
 Micropayment is intended for payment for small purchase such as items form
vending machines.
 The mobile device can communicate with the vending machine directly using
Bluetooth or wireless LAN connection to negotiate the payment and then the
micropayment is carried out.
 Otherwise the customer can make a call to the number of a service provider where
the per call charger is equal to the cost of the vending item.
 Thus the micropayment scheme is implemented through the cooperation of the
mobile phone operator and the third party service provider. This approach has been
used for vending beverages form Coca-Cola machines.
5.3.7.1.1 Payment settlement solution (2 marks)
 Payment solutions can be categorized on the basis of the payment settlement
methods.
 The payment settlement methods can be instant paid, postpaid, prepaid or some
combination of these. In the prepaid solution, customers buy a smart card in
which the amount paid them is stored.
 When they pay for goods or, it is deducted from the stored value.
 Subscription of the services can also be considered as prepaid type of payment.
 The prepaid type of solution allows privacy to users since at no point of the process
is it required to disclose any personal data.
 The instant paid solution is that payment settlement is done as soon as user
confirms the payment as done in direct debiting systems.
 In postpaid solution, customers pay for goods or service later. Payment by credit
card and phone bill is an example of this solution.
5.3.7.1.2 Desirable properties of a mobile payment system (2 marks)
Easy to use:
The m-payment request must be easy for the customer to use. The
client must also be able to personalize the features.
General purpose:
The m-payment system should be usable irrespective of the type of m-
commerce transaction. That should support payments for C2C, B2C, B2B
translations. Further, payments must be possible for both micro-payments and
macro-payments.
Interoperability:
The m-payment system should be usable across different platforms,
networks, and application. For this, the mobile payment system should be built to
international standards and possibly using open technologies.
Trust:
The m-payment system should be trustworthy. That is a customer should be
reasonably sure that credit or debit card related information that he is supplying
would not be misused. Secondly transaction made by customer usually gets stored.
Cost:
The mobile payment should not impose a high overhead cost, and the
overhead cost should be comparable to that of other traditional payment systems.
Swiftness:
The response time of the m-payment system should be reasonable.
Global payments: Make payments to vendor across the globe using the m-
payment system.
5.3.7.1.3 Mobile payment solutions (2 marks)
SMS based payment
In this the customer send a text message for the payment and the payment is
added to his phone bill.
POS based payment
In POS based payment, the user uses a handheld device to pay for rendered
products at a physical point-of-sale or a mobile point-of-sale device and payments
to point-of-sale locations, such as stores, vending machine, etc.
Bar code based payment
Bar code based payment is type where bar code is used to pay the transaction.
Immediate after the bar code is scanned at the trade point-of-sale and respective
amount on the purchase is deducted from the wallet balance of the user.
NFC(Near field communication) based payment
NFC based mobile payment requires the user to install certain payment
application such as visa pay Wave, master card pay pass etc. For paying the
transaction amount, user enables the payment app and the necessary details are
transfer to the POS machine through Bluetooth.
Mobile Wallet
A user may have a number of ATM card or credit card. The mobile wallet helps
to keep these under the umbrella of a single wallet and can make payments
whenever necessary. A few examples of mobile wallet are Pay pal, Google wallet,
paytm, etc.
Process of Mobile payment
Figure 5.12: Process of Mobile Payment
1. Customer places order for some goods with the trader.
2. The trader securely transfers the order to the selected payment service provider over
the internet.
3. The customer authenticates with the payment service provider.
4. The payment service provider formats the transaction detail appropriately and
securely routes the transaction authorization request through its payment gateway to
the selected customer's bank. The bank either accepts or declines the payment
request.
5. The merchant is informed of the payment status.
6. For a successful transaction, the customer's bank transfers the requested amount to
the trader's bank account.
5.3.7.1.4 Security issues (2 marks)
• M-Commerce is anticipated to introduce new security and privacy risks beyond
those currently found in E-commerce system (Ghosh and Swaminatha,2001).
• Users of mobile device can be difficult to trace because of roaming of the users.
• Also the mobile devices go on-line and off-line frequently.
• Thus, attackers would be very difficult to trace.
• Another security risk unique to the mobile devices is the risk of loss or theft.
• A mobile device that is stolen or has fallen into wrong hands can invite frauds that
are difficult to track and prevent.
• A major problem in this regard is the lack of any satisfactory mechanism available
at present to authenticate a particular user.

More Related Content

What's hot

Service level agreement in cloud computing an overview
Service level agreement in cloud computing  an overviewService level agreement in cloud computing  an overview
Service level agreement in cloud computing an overviewDr Neelesh Jain
 
Devices and gateways
Devices and gatewaysDevices and gateways
Devices and gatewaysNikil S Raaju
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systemskaran2190
 
Operating system components
Operating system componentsOperating system components
Operating system componentsSyed Zaid Irshad
 
TELECOMMUNICATIONS SYSTEMS
TELECOMMUNICATIONS SYSTEMSTELECOMMUNICATIONS SYSTEMS
TELECOMMUNICATIONS SYSTEMSjunnubabu
 
Chapter 3 slides (Distributed Systems)
Chapter 3 slides (Distributed Systems)Chapter 3 slides (Distributed Systems)
Chapter 3 slides (Distributed Systems)soe sumijan
 
hierarchical bus system
 hierarchical bus system hierarchical bus system
hierarchical bus systemElvis Jonyo
 
Cloud computing security from single to multiple
Cloud computing security from single to multipleCloud computing security from single to multiple
Cloud computing security from single to multipleKiran Kumar
 
Cloud Application architecture styles
Cloud Application architecture styles Cloud Application architecture styles
Cloud Application architecture styles Nilay Shrivastava
 
MEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLMEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLjunnubabu
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualizationAbdul417101
 
05 global mobile satellite
05 global mobile satellite05 global mobile satellite
05 global mobile satelliteHardik Kakadiya
 
Operating system structures
Operating system structuresOperating system structures
Operating system structuresMohd Arif
 

What's hot (20)

Service level agreement in cloud computing an overview
Service level agreement in cloud computing  an overviewService level agreement in cloud computing  an overview
Service level agreement in cloud computing an overview
 
Devices and gateways
Devices and gatewaysDevices and gateways
Devices and gateways
 
Mobile computing (Wireless) Medium Access Control (MAC)
Mobile computing (Wireless) Medium Access Control (MAC)Mobile computing (Wireless) Medium Access Control (MAC)
Mobile computing (Wireless) Medium Access Control (MAC)
 
Connecting devices
Connecting devicesConnecting devices
Connecting devices
 
Mobile data networks
Mobile data networksMobile data networks
Mobile data networks
 
Unit 1 architecture of distributed systems
Unit 1 architecture of distributed systemsUnit 1 architecture of distributed systems
Unit 1 architecture of distributed systems
 
WLAN
WLANWLAN
WLAN
 
Operating system components
Operating system componentsOperating system components
Operating system components
 
TELECOMMUNICATIONS SYSTEMS
TELECOMMUNICATIONS SYSTEMSTELECOMMUNICATIONS SYSTEMS
TELECOMMUNICATIONS SYSTEMS
 
Chapter 3 slides (Distributed Systems)
Chapter 3 slides (Distributed Systems)Chapter 3 slides (Distributed Systems)
Chapter 3 slides (Distributed Systems)
 
hierarchical bus system
 hierarchical bus system hierarchical bus system
hierarchical bus system
 
Cloud computing security from single to multiple
Cloud computing security from single to multipleCloud computing security from single to multiple
Cloud computing security from single to multiple
 
Cloud Application architecture styles
Cloud Application architecture styles Cloud Application architecture styles
Cloud Application architecture styles
 
Gprs architecture
Gprs architectureGprs architecture
Gprs architecture
 
Lan technologies
Lan technologiesLan technologies
Lan technologies
 
MEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROLMEDIUM ACCESS CONTROL
MEDIUM ACCESS CONTROL
 
Xen and the art of virtualization
Xen and the art of virtualizationXen and the art of virtualization
Xen and the art of virtualization
 
Schiller2
Schiller2Schiller2
Schiller2
 
05 global mobile satellite
05 global mobile satellite05 global mobile satellite
05 global mobile satellite
 
Operating system structures
Operating system structuresOperating system structures
Operating system structures
 

Similar to Mobile Computing-Unit-V-Mobile Platforms and Applications

MOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxMOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxkarthiksmart21
 
how does smart phone works?
how does smart phone works?how does smart phone works?
how does smart phone works?Sakshi Bhargava
 
Embedded systems introduction
Embedded systems introductionEmbedded systems introduction
Embedded systems introductionmohamed drahem
 
Computer Fundamentals and Basics of Computer
Computer Fundamentals and Basics of ComputerComputer Fundamentals and Basics of Computer
Computer Fundamentals and Basics of ComputerSuman Mia
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..Aashish Uppal
 
Chap3 Device Technology
Chap3 Device TechnologyChap3 Device Technology
Chap3 Device TechnologyANUSUYA T K
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxaparna14patil
 
Embedded system notes
Embedded system notesEmbedded system notes
Embedded system notesTARUN KUMAR
 
Embedded system.pptx
Embedded system.pptxEmbedded system.pptx
Embedded system.pptxSaransh Garg
 
Project Report on Embedded Systems
Project Report on Embedded Systems Project Report on Embedded Systems
Project Report on Embedded Systems Suhani Singh
 
A Survey Embedded Systems Supporting By Different Operating Systems.pdf
A Survey   Embedded Systems Supporting By Different Operating Systems.pdfA Survey   Embedded Systems Supporting By Different Operating Systems.pdf
A Survey Embedded Systems Supporting By Different Operating Systems.pdfFiona Phillips
 

Similar to Mobile Computing-Unit-V-Mobile Platforms and Applications (20)

MOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptxMOBILE COMPUTING Unit 5.pptx
MOBILE COMPUTING Unit 5.pptx
 
UNIT-4
UNIT-4UNIT-4
UNIT-4
 
unit-5
unit-5unit-5
unit-5
 
Embedded system
Embedded systemEmbedded system
Embedded system
 
Embeddedsystem
EmbeddedsystemEmbeddedsystem
Embeddedsystem
 
how does smart phone works?
how does smart phone works?how does smart phone works?
how does smart phone works?
 
Mobile computin intro.pptx
Mobile computin intro.pptxMobile computin intro.pptx
Mobile computin intro.pptx
 
Symbian os
Symbian osSymbian os
Symbian os
 
Embedded systems introduction
Embedded systems introductionEmbedded systems introduction
Embedded systems introduction
 
Computer Fundamentals and Basics of Computer
Computer Fundamentals and Basics of ComputerComputer Fundamentals and Basics of Computer
Computer Fundamentals and Basics of Computer
 
Mobile operating system..
Mobile operating system..Mobile operating system..
Mobile operating system..
 
ESD unit 1.pptx
ESD unit 1.pptxESD unit 1.pptx
ESD unit 1.pptx
 
Chap3 Device Technology
Chap3 Device TechnologyChap3 Device Technology
Chap3 Device Technology
 
Introduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptxIntroduction to Mobile Operating System.pptx
Introduction to Mobile Operating System.pptx
 
Embedded system notes
Embedded system notesEmbedded system notes
Embedded system notes
 
Embedded system.pptx
Embedded system.pptxEmbedded system.pptx
Embedded system.pptx
 
Project Report on Embedded Systems
Project Report on Embedded Systems Project Report on Embedded Systems
Project Report on Embedded Systems
 
Embedded
EmbeddedEmbedded
Embedded
 
Embedded
EmbeddedEmbedded
Embedded
 
A Survey Embedded Systems Supporting By Different Operating Systems.pdf
A Survey   Embedded Systems Supporting By Different Operating Systems.pdfA Survey   Embedded Systems Supporting By Different Operating Systems.pdf
A Survey Embedded Systems Supporting By Different Operating Systems.pdf
 

More from Ramco Institute of Technology, Rajapalayam, Tamilnadu, India

More from Ramco Institute of Technology, Rajapalayam, Tamilnadu, India (20)

AD3251-Data Structures Design-Notes-Tree.pdf
AD3251-Data Structures  Design-Notes-Tree.pdfAD3251-Data Structures  Design-Notes-Tree.pdf
AD3251-Data Structures Design-Notes-Tree.pdf
 
AD3251-Data Structures Design-Notes-Searching-Hashing.pdf
AD3251-Data Structures  Design-Notes-Searching-Hashing.pdfAD3251-Data Structures  Design-Notes-Searching-Hashing.pdf
AD3251-Data Structures Design-Notes-Searching-Hashing.pdf
 
ASP.NET-stored procedure-manual
ASP.NET-stored procedure-manualASP.NET-stored procedure-manual
ASP.NET-stored procedure-manual
 
Neural networks using tensor flow in amazon deep learning server
Neural networks using tensor flow in amazon deep learning serverNeural networks using tensor flow in amazon deep learning server
Neural networks using tensor flow in amazon deep learning server
 
CS8601 mobile computing Two marks Questions and Answer
CS8601 mobile computing Two marks Questions and AnswerCS8601 mobile computing Two marks Questions and Answer
CS8601 mobile computing Two marks Questions and Answer
 
Mobile computing Unit III MANET Notes
Mobile computing Unit III MANET NotesMobile computing Unit III MANET Notes
Mobile computing Unit III MANET Notes
 
Unit II -Mobile telecommunication systems
Unit II -Mobile telecommunication systemsUnit II -Mobile telecommunication systems
Unit II -Mobile telecommunication systems
 
Virtual lab - Routing in Mobile Adhoc Networks
Virtual lab - Routing in Mobile Adhoc NetworksVirtual lab - Routing in Mobile Adhoc Networks
Virtual lab - Routing in Mobile Adhoc Networks
 
Flipped class collaborative learning-kaliappan-rit
Flipped class collaborative learning-kaliappan-ritFlipped class collaborative learning-kaliappan-rit
Flipped class collaborative learning-kaliappan-rit
 
Web services-Notes
Web services-NotesWeb services-Notes
Web services-Notes
 
Building Service Oriented Architecture based applications
Building Service Oriented Architecture based applicationsBuilding Service Oriented Architecture based applications
Building Service Oriented Architecture based applications
 
Innovative Practice-ZigSaw
Innovative Practice-ZigSaw Innovative Practice-ZigSaw
Innovative Practice-ZigSaw
 
SOA unit-3-notes-Introduction to Service Oriented Architecture
SOA unit-3-notes-Introduction to Service Oriented ArchitectureSOA unit-3-notes-Introduction to Service Oriented Architecture
SOA unit-3-notes-Introduction to Service Oriented Architecture
 
Innovative practice -Three step interview-Dr.M.Kaliappan
Innovative practice -Three step interview-Dr.M.KaliappanInnovative practice -Three step interview-Dr.M.Kaliappan
Innovative practice -Three step interview-Dr.M.Kaliappan
 
Service Oriented Architecture-Unit-1-XML Schema
Service Oriented Architecture-Unit-1-XML SchemaService Oriented Architecture-Unit-1-XML Schema
Service Oriented Architecture-Unit-1-XML Schema
 
IT6801-Service Oriented Architecture-Unit-2-notes
IT6801-Service Oriented Architecture-Unit-2-notesIT6801-Service Oriented Architecture-Unit-2-notes
IT6801-Service Oriented Architecture-Unit-2-notes
 
Innovative Practice-Think-pair-share-Topic: DTD for TV schedule
Innovative Practice-Think-pair-share-Topic: DTD for TV scheduleInnovative Practice-Think-pair-share-Topic: DTD for TV schedule
Innovative Practice-Think-pair-share-Topic: DTD for TV schedule
 
IT6801-Service Oriented Architecture- UNIT-I notes
IT6801-Service Oriented Architecture- UNIT-I notesIT6801-Service Oriented Architecture- UNIT-I notes
IT6801-Service Oriented Architecture- UNIT-I notes
 
Soa unit-1-well formed and valid document08.07.2019
Soa unit-1-well formed and valid document08.07.2019Soa unit-1-well formed and valid document08.07.2019
Soa unit-1-well formed and valid document08.07.2019
 
Soa unit-1-xml namespaces 09.07.2019
Soa unit-1-xml namespaces 09.07.2019Soa unit-1-xml namespaces 09.07.2019
Soa unit-1-xml namespaces 09.07.2019
 

Recently uploaded

Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHC Sai Kiran
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvLewisJB
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxk795866
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...asadnawaz62
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girlsssuser7cb4ff
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitterShivangiSharma879191
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncssuser2ae721
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .Satyam Kumar
 

Recently uploaded (20)

Introduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECHIntroduction to Machine Learning Unit-3 for II MECH
Introduction to Machine Learning Unit-3 for II MECH
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Work Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvvWork Experience-Dalton Park.pptxfvvvvvvv
Work Experience-Dalton Park.pptxfvvvvvvv
 
Introduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptxIntroduction-To-Agricultural-Surveillance-Rover.pptx
Introduction-To-Agricultural-Surveillance-Rover.pptx
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...complete construction, environmental and economics information of biomass com...
complete construction, environmental and economics information of biomass com...
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 
Call Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call GirlsCall Girls Narol 7397865700 Independent Call Girls
Call Girls Narol 7397865700 Independent Call Girls
 
8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter8251 universal synchronous asynchronous receiver transmitter
8251 universal synchronous asynchronous receiver transmitter
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsyncWhy does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
Why does (not) Kafka need fsync: Eliminating tail latency spikes caused by fsync
 
POWER SYSTEMS-1 Complete notes examples
POWER SYSTEMS-1 Complete notes  examplesPOWER SYSTEMS-1 Complete notes  examples
POWER SYSTEMS-1 Complete notes examples
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
Churning of Butter, Factors affecting .
Churning of Butter, Factors affecting  .Churning of Butter, Factors affecting  .
Churning of Butter, Factors affecting .
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 

Mobile Computing-Unit-V-Mobile Platforms and Applications

  • 1. RAMCO INSTITUTE OF TECHNOLOGY Department of Computer Science and Engineering Academic Year: 2019- 2020 (Even Semester) Degree, Semester & Branch: VI Semester B.E. CSE. Course Code & Title: CS8601 Mobile Computing. Name of the Faculty member: Dr.M.Kaliappan, Associate Professor/CSE -------------------------------------------------------------------------------------------------------------- UNIT V MOBILE PLATFORMS AND APPLICATIONS Mobile Device Operating Systems – Special Constrains & Requirements – Commercial Mobile Operating Systems – Software Development Kit: iOS, Android, BlackBerry, Windows Phone – M-Commerce – Structure – Pros & Cons – Mobile Payment System – Security Issues -------------------------------------------------------------------------------------------------------------- Credit: 1. Prasant Kumar Pattnaik, Rajib Mall, ―Fundamentals of Mobile Computing‖, PHI Learning Pvt.Ltd, New Delhi – 2012 2. Credit: Internet resources -------------------------------------------------------------------------------------------------------------- Objective:  To enable the students to gain knowledge on different mobile platforms and application development. Outcome:  Develop a mobile application using android/iOS/Windows SDK 5.1 Operating system responsibilities in Mobile devices • Managing resources • Providing different interfaces • Managing resources – OS of a mobile device efficiently utilize the resources by multiple task – Resources may be processor, memory, files , camera, speaker, keyboard and screen – A mobile device runs multiple applications at the same time and an application in turn run multiple tasks. A task has multiple threads. – Applications: voice communication, SMS, E-Mail, music play, recording, browsing – Ex: A person may listen to music, at the same time he might answer incoming call and SMS arrive at the same time. • Providing different interfaces
  • 2. – Mobile operating system provides interface to user of the device, networks and other devices. – The important interfaces like data, control, voice communication with base stations using different protocols. – Mobile OS takes care of recognizing inputs from key board, sending outputs to display screen. – Interfacing with other mobile devices, computers and printers. – Popular Mobile OS • iOS, Android, windows phone, symbian, Blackberry, Bada, Palm OS 5.2 Mobile OS • A mobile operating system is an operating system for phones, tablets, smart watches, or other mobile devices. • Operating system is structured into a kernel layer and shell layer • Shell layer provides facilities for user interaction with kernel • Kernel executes in the supervisor mode and run privileged instruction • Kernel could not run in the user mode. • During booting, kernel gets loaded first, and continuous to remain in the main memory. • Kernel is called memory resident part of an operating system. • Kernel is responsible for operating system services like interrupt service, memory management , processor, files etc • Two type of kernel design (8 Marks) • Monolithic kernel design • Micro kernel design 5.2.1 Monolithic kernel design – A monolithic kernel is an operating system software framework that holds all privileges to access input/output devices, memory, hardware interrupts and the CPU stack. – Kernel consists the entire Operating system code – In supervisor mode, OS runs securely and efficiently. – Problem: • It make the kernel massive, non-modular, hard to maintain, extend and configure • Monolithic OS generate more errors and bugs – Example: VMS, Linux,UNIX, OS/360, OpenVMS, Multics, BSD(Berkeley Software Distribution), MS-DOS and Mac OS
  • 3. Figure 5.1: Monolithic kernel design 5.2.2 Micro kernel – Microkernel is the minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include memory management, thread management, and inter-process communication. – Micro kernel reduce the size of the kernel code – Only basic hardware dependent functionalities and a few critical functions are implemented in kernel code. All other functionalities are implemented in user mode. – It easier to port, extend, maintain the operating system – The kernel code is very difficult to debug compared to application program. The bug in the kernel code can crash the system even it does not bring down the entire system. This is the one reason as why the microkernel is expected to more reliable than monolithic kernel design – Example – QNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Integrity, PikeOS, HURD, Minix, and Coyotos
  • 4. Figure 5.2: Monolithic kernel design Comparison of microkernel and monolithic kernel (2 Marks) MICROKERNEL MONOLITHIC KERNEL In microkernel user services and kernel, services are kept in separate address space In monolithic kernel, both user services and kernel services are kept in the same address space. smaller in size. larger than microkernel. Slow execution. Fast execution. easily extendible. hard to extend. If a service crashes, it does effect on working of microkernel. If a service crashes, the whole system crashes in monolithic kernel. QNX, Symbian, L4Linux, Singularity, K42, Mac OS X, Integrity, PikeOS, HURD, Minix, and Coyotos. Linux, BSDs (FreeBSD, OpenBSD, NetBSD), Microsoft Windows (95,98,Me), Solaris, OS-9, AIX, HP-UX, DOS, OpenVMS, XTS-400
  • 5. 5.3 Special Constraints and Requirements (8 Marks) • Mobile device is powered by limited energy stored in tiny battery • An important constraints – Avoiding complex computations – Entering into low power sleep mode as soon as possible – Mobile OS need to be loaded much faster than desktop – Kernel of mobile OS need to be very small size 5.3.1 Special Constraints  Limited Memory  Limited Screen size  Miniature keyboard  Limited processing power  Limited battery power  Limited and fluctuating bandwidth of the wireless medium • Limited Memory • A Mobile device has less permanent storage than desktop or laptop • To cope with the limited memory, the mobile OS must be small and provide rich functionalities for user needs • The kernel size need to be small • Limited Screen size • Size of the display screen reveals the portable • New innovative interface need to be designed to overcome the issue • Minimize the user inconvenience • EX: interfaces suit individual preferences switch between menu and icon interface • Miniature keyboard • Mobile devices are either provided with small key pad or display screen used as keyboard • In arrangement, typing the documents and entering the string command is very difficult. • Provision with facility of word completion prompts and free form hand writing recognition • Limited processing power • Modern mobile device incorporate ARM based processor. • The processors are power efficient, powerful and cheaper • The size of the processor is also restricted • To overcome this, Mobile OS provide limited functionalities used for operation of mobile. • Limited battery power • Due to restriction of the size and weight, mobile device has small battery • In spite of small memory, it supports long talk time without recharging frequently.
  • 6. • It is excepted to minimize the power consumption • Power consumption is achieved by putting the processor and screen into sleep mode within a few seconds of inactivity. • Limited and fluctuating bandwidth of the wireless medium • Mobile OS need to be run complex protocol due to its mobility and wireless medium • Wireless medium is directly affected to atmosphere noise that cause bit error rates • Bandwidth may fluctuate randomly due to mobility, noise 5.3.2 Special Service Requirements • Support for specific communication protocol • Support for a variety of input mechanisms • Compliance with open standards • Extensive library support • Support for specific communication protocol • Mobile devices are connected to base station, computers and other devices that require communication support. • Communication protocols used for communications with help of communication technologies(1G, 2G, 3G,4G) • Mobile device need to be support two or more communication technology • TCP/IP and WLAN need to supported for communication with other device and computers. • Web browsing as well as communication with other devices such as pen drive, head phone, USB , Blue tooth and infrared connections are preferable. • Support for a variety of input mechanisms • A miniature keyboard forms the user input mechanism for inexpensive mobile device • Smart phone support QUERY keyboard or stylus based input mechanism along with the hand writing recognition • Compliance with open standards • To facilitate the third party software development, as well as to reduce the cost of development by manufacturer, the OS adhere open standard • Smart phone come with different shapes, size, and screen, therefore, the user interface and networking need to be designed keeping these diversities • Extensive library support • The cost effective development of third party applications require extensive library • The minimum expected library supports include Email, SMS, MMS, Bluetooth, multimedia, and GSM/GPRS
  • 7. 5.3.3 Mobile APPLICATION DEVELOPMENT KIT (16 Marks) • Mobile platform (2 Marks) – A mobile platform in a mobile device manages the software and hardware resources of the device – Mobile platforms in Market • Android • iOS (iPhone, iPad, iPod, and Touch) • Windows Phone • Windows Mobile • BlackBerry • Symbian • Bada • WebOS • Brew • MeeGo 5.3.1 Android (2 Marks) Android is a software stack for mobile devices that includes an operating system, middleware and key applications. Figure 5.3: Open Handset Alliance Open Handset Alliance, a group of 84 technology and mobile companies who have come together to accelerate innovation in mobile and offer consumers a richer, less expensive, and better mobile experience Why Android? (2 Marks) Open • Android is built on the open Linux Kernel. • Android is open source. • Can be liberally extended to incorporate new cutting edge technologies as they emerge. Fast & easy application development • Android provides access to a wide range of useful libraries and tools that can be used to build rich applications.
  • 8. 5.3.1.1 Android architecture or Software stack(16 Marks) Figure 5.4: Android architecture The Android software stack generally consists of a Linux kernel and a collection of C/C++ libraries that is exposed through an application framework that provides services, and management of the applications and run time. 5.3.1.1.1 Linux Kernel Android was created on the open source kernel of Linux. One main reason for choosing this kernel was that it provided proven core features on which to develop the Android operating system. The features of Linux kernel are: 1. Security: The Linux kernel handles the security between the application and the system. 2. Memory Management: It efficiently handles the memory management thereby providing the freedom to develop our apps. 3. Process Management: It manages the process well, allocates resources to processes whenever they need them. 4. Network Stack: It effectively handles the network communication. 5. Driver Model: It ensures that the application works. Hardware manufacturers can build their drivers into the Linux build. 5.3.1.1.2 Libraries: • Including a set of C/C++ libraries used by components of the Android system • Exposed to developers through the Android application framework. 1. The Android runtime:
  • 9. Providing environment on which every Android application runs • Each Android application runs in its own process, with its own instance of the Dalvik VM. • Dalvik has been written such that a device can run multiple VMs efficiently. Register-based virtual machine Figure 5.5: Android runtime 2. Open GL(graphics library): This cross-language, cross-platform application program interface (API) is used to produce 2D and 3D computer graphics. 3. WebKit: This open source web browser engine provides all the functionality to display web content and to simplify page loading. 4. Media frameworks: These libraries allow you to play and record audio and video. 5. Secure Socket Layer (SSL): These libraries are used for Internet security. 5.3.1.1.3 Android Runtime: Dalvik Virtual Machine (2 Marks) It provides one of the key components which is called Dalvik Virtual Machine. It acts like Java Virtual Machine which is designed especially for Android. Android uses its own custom VM designed to ensure that multiple instances run efficiently on a single device. 5.3.1.1.4 Application Framework (2 Marks) The Android team has built on a known set proven libraries, built in the background, and all of it these is exposed through Android interfaces. These interfaces warp up all the various libraries and make them useful for the Developer.
  • 10. Table 5.1: Android application framework Feature Role View System Used to build an application, including lists, grids, text boxes, buttons, and embedded web browser Content Provider Enabling applications to access data from other applications or to share their own data Resource Manager Providing access to non-code resources (localized strings, graphics, and layout files) Notification Manager Enabling all applications to display customer alerts in the status bar Activity Manager Managing the lifecycle of applications and providing a common navigation back stack 5.3.1.1.5 Applications: Android applications can be found at the topmost layer. At application layer we write our application to be installed on this layer only. Examples of applications are Games, Messages, and Contacts etc. 5.3.1.1.6 Linux Kernel • Relying on Linux Kernel 2.6 for core system services  Memory and Process Management  Network Stack  Driver Model  Security • Providing an abstraction layer between the H/W and the rest of the S/W stack 5.3.1.1.7 Android application components (2 Marks) Figure 5.6: Android Application Components (8 Marks)
  • 11. Activity (2 Marks) • Every user interface in an android mobile app is termed as an activity. • Also termed as the presentation layer of the mobile application. • Each activity contains multiple UI components that come together to populate the screen. • These UI components display information to end user, take user inputs and also generate events. • Each activity is created by extending Activity class present in android.app.Activity package • Activity life cycle (2 Marks) • An activity of android mobile app can take up following 4 states • Active: An activity which is currently in focus, either displaying information to user or user is providing input is active activity. • Paused: An activity which is currently in the view but out of focus is paused activity. This happens when another activity overlaps the view for this activity partially and takes the focus away. • Stopped: An activity which is not visible is termed as stopped activity. This activity is still present in the memory and can be restarted at any point of time • Inactive: A stopped activity when is taken out of the memory is becomes inactive. Content provider (2 Marks) Content providers are used for reading and writing data that are either private to an application or shared across the application. By using the content provider, an application can query or modify the stored data. Ex: Contact Service (2 Marks) A service is a component that runs in the background to perform long-running operations without needing to interact with the user interface. Example: Alarm clock, playing audio in background Broadcast receiver (2 Marks) Broadcast Receivers respond to broadcast announcement from other applications or from the system itself. These announcements are sometime called events or intents. Example: a battery monitoring application broadcast that the battery is low. Based on this, the music player reduces the volume or the screen display may be dimmed. Intent (2 Marks) • Android allows one activity to interact with another activity. • The first activity can pass information (data) to another activity and the second activity can then work with this information. • The sharing of information is done as a key value pair concept. Android uses the concept of intents for achieving this
  • 12. 5.3.1.1.8 Features of Android OS (2 Marks) • The application framework helps in enabling reuse and replacement of individual components. • The Dalvik virtual machine is highly optimized for mobile devices. • The integrated browser is based on the open-sourced WebKit engine. • The OS has optimized graphics by custom-2D graphics library. • 3D graphics uses OpenGL ES 1.0 specification. • SQLite can be used for structured data storage. • The OS supports standard media formats. • The application has EDGE, 3G, Bluetooth, and WiFi. • The application has a compass, a camera, a GPS, and an accelerometer 5.3.2 Android software Development Kit (SDK) (8 Marks) • Class Library and Developer Tools • dx – Dalvik Cross-Assembler • aapt – Android Asset Packaging Tool • adb – Android Debug Bridge • ddms – Dalvik Debug Monitor Service • Emulator and System Images • Documentation and Sample Code Eclipse IDE + ADT (Android Development Tools) • Reduces Development and Testing Time • Makes User Interface-Creation easier • Makes Application Description Easier • Now everything packed in a single bundle • Jump start development with single download • No installation, just extract the zip content • No internet connection needed, copy from your friends • Android SDK Manager •The SDK manager is a tool that allows to view, install, update, and uninstall packages for the Android SDK Figure 5.7: Android SDK manager
  • 13. • Android Virtual Device •An Android Virtual Device (AVD) is a device configuration that runs on the Android Emulator. It provides virtual device-specific Android Environment in which we can install & test our Android Application. AVD Manager is a part of SDK Manager to create and manage the virtual devices created •Configuration profile for Emulator instance •Create different AVDs for different screen resolutions Figure 5.8: Android Virtual Device Main Activity.java package com.example.helloworld; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } } Android manifest.xml (2 Marks) • Contains the configuration details to install the application in the device. • Contains the information about application components, class names, type of events in the application and permissions (eg. permissions to access internet).
  • 14. 5.3.3 iPhone Operating System(iOS) (16 Marks) • iOS is the mobile OS in iPhone, iPad, and iPod touch devices. • iOS was originally developed for iPhone but later extended to support other Apple mobility devices. • iPhone is believed to be a revolution in mobile phones market because of its unique UI and deep integration with the web 5.3.3.1 iOS – iPhone Architecture • iOS acts as an intermediate level between the hardware and the different applications that appear on the UI. • Developer-created applications very rarely communicate with the hardware directly. • Developer applications communicate with the hardware through well-defined system interfaces Figure 5.9: iOS – iPhone Architecture 5.3.3.1.1 Coco touch layer (2 Marks) • This layer contains the frameworks like UI Kit and Foundation frameworks. Cocoa Touch also includes other frameworks providing key services for accessing device features • UI Kit and foundation framework (2 Marks) • It provides the basic tools and infrastructure that a developer needs to develop graphical and event-driven applications in iOS. • UI Kit framework is an Objective-C framework. • Every application in iOS uses this framework to implement this core set of features, which are as follows: • Application management • Graphics and UI management • Event-handling support • Support for text and web content • Objects representing system views and controls • UI Kit supports device-specific features and provides the fundamental code for building the application, such as the following: – Accelerometer data – Built-in camera
  • 15. – User’s photo library – Device-specific information Key features of Cocoa Touch layer (2 Marks) • Share. Share content with social websites or other entities. • Action. Perform a simple task with the current content. • Widget. Provide a quick update or enable a brief task in the Today view of Notification Center. • Photo editing. Perform edits to a photo or video within the Photos app. • Document Picker • The document picker view controller grants users access to files outside your application’s sandbox. • It is a simple mechanism for sharing documents between apps. • AirDrop • AirDrop allows users to share photos, documents, URLs, and other kinds of data with nearby devices. • Storyboards • Storyboards are the recommended way to design app’s user interface. • Storyboards allowed designing entire user interface in one place so that you can see all views and view controllers. • Apple Push Notification Service • Apple Push Notification service provides a way to alert users about new information, even when your app is not actively running. • Using this service, you can push text notifications; trigger audible alerts on user devices at any time. 5.3.3.1.2 Media layer • The graphics and multimedia technologies in iPhone concentrate on providing the best multimedia experience on a mobile device. The high-level framework in iOS helps developers to create advanced graphics and animations quickly. • Technologies – Graphics technologies • High-quality graphics are an important part of all iPhone applications to render 2D and 3D drawing. – Core audio • Core audio generate, record, mix, and play audio in any application. • Developers can also use core audio interface to use the vibration feature on the devices that support it. – OpenAL • OpenAL is a cross-platform standard for getting 3D audio in applications. • Code modules written using OpenAL in iOS can be ported and can run on any other platform. – Video technologies
  • 16. • Full-screen video playback is supported through the media player framework. • The framework supports the playback of files with the .mov, .mp4, .m4v, and .3gp extensions and uses the following compression standards: • Video formats • H.264 baseline profile level 3.0 video • MPEG-4 Part 2 video (simple profile) • Audio formats • Advanced audio coding (AAC) • Apple Lossless Audio Codec (ALAC) 5.3.3.1.3 Core service layer • The core-services layer provides the basic fundamental system services that all developer applications use. • various frameworks of the core-services layer: – Address Book • The address book provides programmatic access to the contacts on a user’s device. – Core location • Core location helps the user in determining the latitude and longitude of the location of the device. – Core foundation • The group of C-based interfaces provides data management and service features for iPhone applications. – CFNetwork • CFNetwork is a high-performance, C-based framework that provides a set of object-oriented libraries for the users for working with network protocols such as FTP, HTTP, DNS. • CFNetwork gives the developer detailed control over the protocol stack. • Security • Security provides an explicit framework that users can use to guarantee the security of the data that the application manages. • It provides interfaces for managing public and private keys, certificates, and trust policies. • It supports storage of certificates and cryptographic keys in the keychain, considered as a secure repository for sensitive user data. • SQLite – SQLite is a lightweight SQL database library. – From the application, the user can create local database files.
  • 17. – The application can manage the tables and records in these database files. • XML support – LibXML2 and libxslt libraries provide support for manipulating XML content. – It can transform extensible markup language (XML) content to hypertext markup language (HTML). 5.3.3.1.4 Core OS layer – The core-OS layer includes kernel environment, drivers, and basic interfaces of OS. The kernel is based on Mac, and it is responsible for every aspect of the OS. – Core OS manages the file system, virtual memory system, threads, network, and inter-process communication. – Access to the kernel and drivers is restricted to a limited set of system frameworks and applications as a security measure. – Developer application accesses low-level features of the OS through the LibSystem iOS features (2Marks) Feature Details Handset display 480 X 320 px (HVGA) or 960 X 640 px Database SQLite, lightweight relational database used for data storage purposes Connectivity iPhone Supports connectivity technologies including GSM / EDGE, CDMA, HSDPA 3.6, UMTS, Bluetooth, WiFi Web Browser Safari browser is used Java support Not supported Media support Audio formats: AAC, protected AAC, MP3 VBR, Apple, WAV etc., Video formats: MPEG, M-JPEG Multitasking Available Bluetooth Bluetooth 2.1 + EDR wireless technology Messaging service SMS and MMS are available forms of messaging
  • 18. 5.3.4 iOS Mobile Application Development Kit ( 16 marks) The iOS SDK is a software development kit developed by Apple Inc. The kit allows for the development of mobile apps on Apple's iOS operating system. • iOS is multitasking and runs on different devices (iPhones, iPod Touches, iPads, and Apple TVs). • Apple provides an IDE called Xcode. • Xcode is the IDE used by iOS (and OS X) developers. It does NOT run on MS Windows. • Xcode provides an interface to the compiler, editor, debugger, and code profiling tools • Launch Xcode • It presented with the Welcome screen: • Create a new project • Connect to a repository • Learn about using Xcode • Go to Apple’s Portal • Go ahead and click on “Create a new project” • Project template • There are several predefined templates to help you get started on a new project • For now, click on Single View Application
  • 19. • Project options • The Product Name is the name of your app • Company Identifier is your organization name – such as edu.itu (reverse domain) • Class Prefix (leave empty) • Device Family: iPad, iPhone, Universal (Universal means that a single binary will have screens for iPhone, iPod Touch, and iPads) • Storyboards • Automatic Reference Counting • Include Unit Tests (leave unchecked as we are not using) • Source control • Asks for a location for Source Control • By Default, it will use a local GIT repository • It keeps track of versions,
  • 20. • GIT and Subversion are two popular source controls systems Create view
  • 21. Xcode generates three new files including HelloWorldViewController.h, HelloWorldViewController.m and HelloWorldViewController.xib. select the HelloWorldViewController.xib file, you’ll find a empty view similar to the below image
  • 22. • Click the Run button (upper left of the screen) • The iPad simulator will launch (You can also change this to iPhone if you want) 5.3.5 Windows phone (16 Marks) • The WP7OS is developed by Microsoft, and it succeeds the Windows Mobile platform. • Windows Phone 7 provides a platform that simplifies the design and development of applications. • Windows Phone 10 is the latest mobile device 5.3.5.1 Windows phone OS Architecture • Windows Phone 7.0 utilizes a layered architecture that has a – Kernel space and a user space. • Kernel space – It consists of the following items • Kernel • File system • Graphics rendering • Windows Phone OS kernel is completely based on Windows Embedded CE 6.0 as its core. • It supports up to 32,000 simultaneous processes. Each of these processes can access up to 1 GB of virtual memory. • Windows Phone OS is a 32-bit OS, and therefore, it can access up to 4 GB of RAM
  • 23. Figure 5.10: Windows phone OS Architecture Runtime on “screen”: • Silverlight, XNA Framework, and Windows Phone specific features such as various sensors (accelerometer, GPS, and media options) together combine to provide a mature environment to build secure, graphically rich applications. • For Windows Phone, all the development happens in managed code, as the Silverlight and the XNA frameworks are used. • This ensures that the managed code runs in a protected sandbox, which in turn allows a faster development cycle for safe and secure applications. • The two frameworks of Silverlight and XNA, the common base class library, and Windows Phone-specific components provide a large number of components for developers to develop applications • Silverlight – Rich Internet application style UIs can be designed using the Silverlight framework. – Visual Studio or Expression Blend is used in designing extensible application markup language (XAML)-based interfaces • XNA Framework – Exclusively for game developers Includes software, services, and resources required for developing on Microsoft gaming platforms – Provides a complete set of managed APIs for game development
  • 24. – Allows professional developers to quickly create games on platforms such as Windows Phone, Windows7, Xbox 360, and Zune HD – Includes 2D sprite-based APIs supporting rotation, scaling, stretching, and filtering – Also includes 3D graphics APIs for 3D geometry, textures, etc. • Sensors – A variety of sensors supply data that can be consumed by applications. – The framework includes sensors for multitouch input, accelerometer • Media – Used for building a rich UI that incorporates graphics, animation, and media – Available for both the Silverlight and the XNA framework developers – Variety of media formats are supported by managed APIs – Allow discovery and enumeration of media present on the device and also supports playback of that media • Location – APIs are available to access the physical location information from the device using Microsoft Location Service. – Location APIs on the device work along with the location cloud services. Tools: IDEs • It used in Windows Phone development are Visual Studio and Expression Blend. These tools along with related tools and documentation, including the simulator and the online guides and samples, help the developer for creating, debugging, deploying, and updating applications. Cloud services: • The various cloud services supported in Windows Phone 7 are Windows Azure, Xbox LIVE services, notification services, location services, and a variety of other web services. – These different features allow developers to share data across the cloud. Windows Phone OS also supports connections to third-party web services. Portal Services: • The Windows Phone Marketplace provides robust services, which allow application developers to register, certify, and market their applications • The Windows Phone Marketplace is a central location for developers to submit and get their applications certified. • It also acts as a centralized location for consumers, from which they can buy or update their applications • Registration and validation – Developers can get started on the App Hub by signing up with a Live ID. – After successful registration, developers can obtain the tools in a single download. • Certification, publishing, and update management – Applications are submitted in Marketplace in the .xap file format.
  • 25. – Developers can track the submission status of their application and can also receive notifications on certification status. – After an application is certified, it will be published on the Marketplace. – Developers have the option to set the pricing and also select the markets (country wise) where they want to publish the application • Windows Phone Marketplace and billing – A common place where developers make their applications available for purchase by consumers – Supported mode of payment for application includes mobile operator and credit card billing • Business intelligence: – Business intelligence provides developers with information about their application in Marketplace OS Versions Windows Phone 7.5 Windows Phone 7.8 Windows Phone 8 Windows Phone 8.1 Windows Phone 10 5.3.5.2 SDK for windows phone ( 8 marks) • Developers can download and install the package that will include the necessary tools required to start developing applications for Windows Phone – Visual Studio 2010 • IDEs are used for building Windows Phone applications. • Using the IDE, developers can create Silverlight or XNA Framework applications that can run on Windows Phone. • The tool includes the project system, designer, debugger, packager, and manifest generation. – Expression blend • It is used in creating the design of Silverlight-based applications on a Windows Phone. • It allows developers to create XAML-based UI for Windows Phone applications. • Behaviors for the XAML-based applications can be then implemented by developers in Visual Studio. • Windows Phone Emulator – The Windows Phone Emulator is integrated into the Visual Studio and Expression blend. – The tool supports application deployment, debugging, and application execution. – Support for the graphics processing unit (GPU) emulation, orientation change, etc., is available.
  • 26. • XNA Game Studio – Extends the Visual Studio tools in supporting the XNA framework – Used to build games for Microsoft Windows, Microsoft Xbox 360 system, Microsoft Zune, and Windows Phone – Managed-code class library in XNA framework contains functionality targeted specifically at game development tasks • Samples, documentation, guides, and community – Documentation, sample code, and applications are available. – Forums, blogs, and web sites are available for developers for query clarification and also for sharing information. – Visual Studio Help system allows developers to update their documentation sets. • Developer Tools – Microsoft Visual Studio 2012 with windows phone 8 SDK - used for coding purpose – Microsoft Blend 2012 - used for designing purpose – Device Emulator
  • 27. Features Windows Phone 7 (8 Marks) • Stylish UI that supports gestures and smooth animation • Cloud service and media integration • Easy and safe application installation • Device capabilities such as location awareness, sound recording, camera, messaging, and multi-touch 5.3.5.4 Native application and cross platform application 5.3.5.4.1 Native application defined in different ways – an application program that has been developed for use on a particular platform or device – a smart phone application that is coded in a specific programming language, such as Objective C for iOS and Java for Android operating systems 5.3.5.4.2 Multiplatform / Cross Platform development A cross-platform application may run on • Microsoft Windows on the x86 architecture • Linux on the x86 architecture • Mac OS X on either the PowePC or x86 based Apple Macintosh systems • A cross- platform application may run on as many as all existing platforms, or on as few as two platforms
  • 28. 5.3.5.4.2.1 MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP) MEAP is a comprehensive suite of products and services that enable development of mobile applications. Purpose • MEAPs address the difficulties of developing mobile software by managing the diversity of devices, networks and user groups at the time of deployment and throughout the mobile solution’s lifecycle. • Cross-platform considerations are one big driver behind using MEAPs. For example, a company can use an MEAP to develop the mobile application once and deploy it to a variety of mobile devices (including smart phones, tablets, notebooks and ruggedized handhelds) with no changes to the underlying business logic 5.3.6 M-Commerce (16 marks) • Any e-commerce done in a Wireless Environment especially via Internet. • M-Commerce is the buying and selling of goods and services through wireless handheld devices • It is the process of paying for Services using a mobile phone or personal organizer M-Commerce from Customer’s Point of view • The customer wants to access information, goods and services any time and in any place on his mobile device. • He can use his mobile device to purchase tickets for events or public transport, pay for parking, download content and even order books and CDs. • He should be offered appropriate payment methods. They can range from secure mobile micropayment to service subscriptions M-Commerce from Providers Point of view
  • 29. • The future development of the mobile telecommunication sector is heading more and more towards value-added services. Analysts forecast that soon half of mobile operators’ revenue will be earned through mobile commerce. • Consequently operators as well as third party providers will focus on value-added- services. To enable mobile services, providers with expertise on different sectors will have to cooperate. • Innovative service scenarios will be needed that meet the customers’ expectations and business models that satisfy all partners involved Applications 1. Business-to-Consumer Applications (B2C) 2. Business-to-Business Applications (B2B) 1. Business-to-Consumer Applications (B2C) B2C is a form of commerce in which products or services are sold by a business firm to a customer. Ex: Mobile ticketing Mobile Applications Marketing, Advertising, and Customer Service Targeted Advertising • Using demographic information can personalize wireless services • Knowing users preferences and surfing habits marketers can send • User-specific advertising messages • Location-specific advertising messages • Mobile Ticketing • Mobile Ticketing is the process where the customers can order, pay for, obtain and validate tickets from any location and at any time using Mobile phones • Tickets can be booked and cancelled on the mobile device with the help of simple application downloads. • Delivery of tickets to mobile phones can be done in the form of a SMS or by a MMS Business-to-Business Applications (B2B) B2C is a form of commerce in which products or services are sold by a business firm to a dealer. Ex: TV sell it through a dealer. • Mobile Inventory Management • Reduces the amount of inventory and cost. It also drastically reduce the delivery times • Ordering and delivering Information • Stock tracking and control • Supply Chain Management Structure of M-Commerce
  • 30. Figure 5.11: Structure of M-Commenrce • Mobile devices: User specify request with this through internet to M-Commerce application on the net • Mobile Middleware-Maps the internet content to mobile that may support variety of OS. Most handle encryption and decryption. • Network- Core of M-Commerce and deliver packets to closest access points. Most are connected as wireless but host is connected with wired. It uses a protocol called WAP • Host Computers Store all Information needed for Mobile Applications Consists of 3 Major Components o WEB SERVERS: Interact with the Mobile Client o DATABASE SERVERS: Store the data o APPLICATION PRAOGARAM:  Implements the business Logic of the Mobile Commerce Terminology and standards • GPS Satellite-based Global Positioning System • PDA Personal Digital Assistant handheld wireless computer • SMS Short Message Service • EMS Enhanced Messaging Service • MMS Multimedia Messaging Service • WAP Wireless Application Protocol • Smartphones Internet-enabled cell phones with attached applications Pros and cons of M-Commerce (2 marks) Pros or advantages • For a small business could benefit from m-commerce. • Selling a product or service Improving productivity
  • 31. • Offers many payment options • Push advertising • Direct marketing. • More efficient and extensive service offered. Cons or Disadvantages • Expensive cost • Larger screens won’t be displayed is clear Slow speed • Limited for longer message • Hard way to fill the Data • Security is not protected 5.3.7 Mobile payment systems (16 marks) • Mobile payments are a natural evolution of E-payment schemes. A mobile payment (or payment) may be defined as initiation, authorization and confirmation of a financial transaction using a mobile device. Mobile devices include phones, PDAs, and any other device that connects to a mobile network for making payments. • A mobile device can also be used for payments of bills (especially utilities and insurance premiums) with access to account-based payment instruments such as electronic funds transfer, Internet banking payments, direct debit and electronic bill presentment. • An important issue which influences the establishment of the mobile payment procedure is the technical infrastructure needed on the customer's mobile phone and the familiarity of the customer with the rutty gritty procedures. Even a sophisticated technology may fail if the customer is not able to handle it with ease on his specific smartphone. • On the other hand, simple procedures based on simple message exchange via short messaging services (SMS) may prove more successful. Some other procedures may integrate two or more solutions. It is true that M-payments are still in their infancy. • Some important problems dogging the M-payment schemes are those of Security, privacy and guarding against frauds. • The challenges for providing secure transactions are many and range from physical theft of mobile device which can be subsequently used for fraudulent payments.
  • 32. • The M-payment solution are still being developed with standard defined an individual business segments. The other interesting areas related to M-commerce payment not mentioned in this text are the issues of standardization and interoperability in the following section. We discuss the important types of mobile payment schemes. 5.3.7.1 Mobile payment schemes Three popular types of M-payment schemes are currently being used: a) Bank account based b) Credit card based c) Micropayment In each of these approaches a third party service provider (bank, Credit Card Company or Telecom Company) makes a payment on a customer's behalf. An important question that needs to be answered question that needs to be answered is that since the third party incurs an overhead in making the payment, how it would recover the cost. First, the service provider may require pre-payment of this fund. A service provider may charge a small amount as service charge, which can decrease with increasing customer base. A) Bank account based M-payment In this scheme, the bank account of the customer is linked to his mobile phone number. When the customer makes an m-payment to a vendor through Bluetooth or wireless LAN connectivity with the vendor's machine, the bank account of the customer is credited to the vendor's account. mChek -a new payment scheme (2 marks) • mChek (Dahiberg et al,2007) is a new payment system that links a debit or credit card or a bank account ,to a mobile phone, allowing one to make payments from the mobile phone . • Once registers, a user can pay his phone bills, transfer talk time to a friend's account, book tickets for flights, movies, pay water bills, electric bills, etc, from the mobile with the help of simple instructions. • This scheme has a tie-up with Airtel, for example, which allows Airtel subscribers to download mChek application which provides simple graphic interface to use mchek. • There are no charges for downloading as well as using mChek as of now. B) Credit card based M-payment • In the credit card based M-payment, the credit card number is linked to the mobile phone number of the customer.
  • 33. • When the customer makes an M-payment transaction with a merchant, the credit card is charged and the value is credited to the merchant's account. • Credit card based solutions have a limitation especially in India. Currently, the penetration level of credit card is rather low, in India but is expected to grow substantially in the coming years. C) Micropayment (2 marks)  Micropayment is intended for payment for small purchase such as items form vending machines.  The mobile device can communicate with the vending machine directly using Bluetooth or wireless LAN connection to negotiate the payment and then the micropayment is carried out.  Otherwise the customer can make a call to the number of a service provider where the per call charger is equal to the cost of the vending item.  Thus the micropayment scheme is implemented through the cooperation of the mobile phone operator and the third party service provider. This approach has been used for vending beverages form Coca-Cola machines. 5.3.7.1.1 Payment settlement solution (2 marks)  Payment solutions can be categorized on the basis of the payment settlement methods.  The payment settlement methods can be instant paid, postpaid, prepaid or some combination of these. In the prepaid solution, customers buy a smart card in which the amount paid them is stored.  When they pay for goods or, it is deducted from the stored value.  Subscription of the services can also be considered as prepaid type of payment.  The prepaid type of solution allows privacy to users since at no point of the process is it required to disclose any personal data.  The instant paid solution is that payment settlement is done as soon as user confirms the payment as done in direct debiting systems.
  • 34.  In postpaid solution, customers pay for goods or service later. Payment by credit card and phone bill is an example of this solution. 5.3.7.1.2 Desirable properties of a mobile payment system (2 marks) Easy to use: The m-payment request must be easy for the customer to use. The client must also be able to personalize the features. General purpose: The m-payment system should be usable irrespective of the type of m- commerce transaction. That should support payments for C2C, B2C, B2B translations. Further, payments must be possible for both micro-payments and macro-payments. Interoperability: The m-payment system should be usable across different platforms, networks, and application. For this, the mobile payment system should be built to international standards and possibly using open technologies. Trust: The m-payment system should be trustworthy. That is a customer should be reasonably sure that credit or debit card related information that he is supplying would not be misused. Secondly transaction made by customer usually gets stored. Cost: The mobile payment should not impose a high overhead cost, and the overhead cost should be comparable to that of other traditional payment systems. Swiftness: The response time of the m-payment system should be reasonable. Global payments: Make payments to vendor across the globe using the m- payment system.
  • 35. 5.3.7.1.3 Mobile payment solutions (2 marks) SMS based payment In this the customer send a text message for the payment and the payment is added to his phone bill. POS based payment In POS based payment, the user uses a handheld device to pay for rendered products at a physical point-of-sale or a mobile point-of-sale device and payments to point-of-sale locations, such as stores, vending machine, etc. Bar code based payment Bar code based payment is type where bar code is used to pay the transaction. Immediate after the bar code is scanned at the trade point-of-sale and respective amount on the purchase is deducted from the wallet balance of the user. NFC(Near field communication) based payment NFC based mobile payment requires the user to install certain payment application such as visa pay Wave, master card pay pass etc. For paying the transaction amount, user enables the payment app and the necessary details are transfer to the POS machine through Bluetooth. Mobile Wallet A user may have a number of ATM card or credit card. The mobile wallet helps to keep these under the umbrella of a single wallet and can make payments whenever necessary. A few examples of mobile wallet are Pay pal, Google wallet, paytm, etc. Process of Mobile payment
  • 36. Figure 5.12: Process of Mobile Payment 1. Customer places order for some goods with the trader. 2. The trader securely transfers the order to the selected payment service provider over the internet. 3. The customer authenticates with the payment service provider. 4. The payment service provider formats the transaction detail appropriately and securely routes the transaction authorization request through its payment gateway to the selected customer's bank. The bank either accepts or declines the payment request. 5. The merchant is informed of the payment status. 6. For a successful transaction, the customer's bank transfers the requested amount to the trader's bank account. 5.3.7.1.4 Security issues (2 marks) • M-Commerce is anticipated to introduce new security and privacy risks beyond those currently found in E-commerce system (Ghosh and Swaminatha,2001). • Users of mobile device can be difficult to trace because of roaming of the users. • Also the mobile devices go on-line and off-line frequently. • Thus, attackers would be very difficult to trace. • Another security risk unique to the mobile devices is the risk of loss or theft.
  • 37. • A mobile device that is stolen or has fallen into wrong hands can invite frauds that are difficult to track and prevent. • A major problem in this regard is the lack of any satisfactory mechanism available at present to authenticate a particular user.