CHAPTER 1
INTRODUCTION
INTRODUCTION
Mobile application development involves the process of developing the
applications for mobile devices such as Personal Digital Assistants (PDA),
tablets and smart phones and other mobile devices. Native mobile apps
are designed to run on a specific mobile platform, sometimes specific
mobile operating system and supported hardware.
Mobile applications are part of main stream digital strategy for Business
to Consumer (B2C) enterprises. Most of the enterprises are now
adopting “mobile-first” strategy wherein the digital applications are
designed, developed and tested for mobile devices; mobile users attain
the primary focus in the digital strategy.
TYPES OF MOBILE APPLICATIONS
In the early years of mobile apps, the only way to ensure an app could
perform optimally on any device was to develop the app natively. This
meant that new code had to be written specifically for each device's
specific processor. Today, the majority of mobile applications
developed are device-agnostic.
In the past, if an app needed to be cross-platform and run on multiple
operating systems (OSes), there was little, if any, code that could be
reused from the initial development project. Essentially, each device
required its own mobile app development project with its own code
base.
CONT..
Before developing an app, you need to determine which type you'll
be creating. Here's a breakdown of several types of mobile app
development technologies with information about each.
Native applications
Hybrid apps
Progressive web apps
Encapsulated apps
Frameworks and libraries
CONT..
• Native applications: These applications are built using integrated
development environments (IDEs) and languages for mobile OSes such
as Apple iOS or Google Android. Native apps enable you to customize
necessary features, but they can be more costly than other technologies.
• Hybrid apps: These are web apps that act like native apps. They are
developed using technologies such as HTML, JavaScript and Cascading
Style Sheets (CSS). Hybrid apps are more cost-effective to develop than
native apps and can be created faster, but they aren't as feature-rich as
native applications.
• Progressive web apps: A PWA is a website that looks and behaves as
if it is a mobile app. These applications are developed with web
technologies such as Facebook React.
CONT..
• Encapsulated apps: An encapsulated app runs within a
container app. Products such as the Microsoft Power App drag-
and-drop app creation tool enable less experienced developers
to build a mobile application rapidly. But the lack of isolation
from the core OS, OS lock-in and the relative newness could
pose problems.
• Frameworks and libraries: You can use this reusable code
written by someone else to accelerate your development of a
mobile app.
HISTORY
Android Inc. was founded in Palo Alto,
California in October, 2003 by Andy
Rubin, Rich Miner, Nick Sears, and
Chris White.
Their goal was to develop a "smarter
mobile device that was more aware of
its owner's location and preferences.”
They operated secretively, admitting
only that they were working on
software for mobile phones.
HISTORY
Google acquired Android Inc. in August,
2005, making Android Inc. a wholly
owned part of Google Inc.
Nick Sears was the only original founder
that did not stay with Android Inc. after
the acquisition.
At this point in time, many assumed
that Google was planning to enter the
mobile phone market with this move.
HISTORY
On October 21st, 2008, Android 1.0
became available to the public.
"Today's announcement is more
ambitious than any single 'Google
Phone' that the press has been
speculating about over the past few
weeks. Our vision is that the powerful
platform we're unveiling will power
thousands of different phone models.“
-Eric Schmidt, former Google
Chairman/CEO
CATEGORIES OF ANDROID APPLICATIONS
VERSIONS OF ANDRIOD
HISTORY OF IOS
Very popular
Modern versions are very secure
Closed system: by default,
Third parties are not allowed to modify the OS in any way
Users cannot access their iThings remotely
Can only install apps from Apple's App Store, no third parties
Hackers work to overcome these restrictions
HISTORY OF THE IPHONE
2007: iPhone introduced
Running iOS, a pared-down version of OS X
Over the next few years came the iPod, Apple TV, and iPad in
various versions, all running iOS
All run on ARM processor
64-bit starting with iPhone 5s
32-bit for earlier versions
HOW SECURE IS IOS?
First iPhone did not allow any third-party apps
Only a Web browser to allow Web apps
This lowered security requirements
2008: App Store introduced
Over 800,000 apps now
New security measures introduced
ANDROID VS IOS PLATFORMS
COMPARING
PROGRAMMING LANGUAGE
Android OS: Java
iOS: Objective C
DEVELOPMENT PLATFORM
Android OS:
open platform, allowing the use of 3rd party tools
Key to OS success
can reach core components. More like PC
iOS:
Restrictive guidelines
Fixed set of tools, nothing outside, nothing deep
No Flash!
MULTITASKING ABILITIES
Android OS:
Very versatile dynamic
Highly fragmented challenging
Poor battery performance
Best notification system (e.g. emails)
iOS:
Stable and exclusive platform
Fixed set of tools, with clear potential and boundaries easier
SECURITY
Android OS:
Access control, isolation, web security
Encryption
Permission-based access control:
Static list in manifest
User presented with list at installation time
Wild West app marketplace.
Nearly any app is allowed to market
Android-specific malware
SECURITY
iOS:
Access control, isolation, web security
Encryption
Permission-based access control:
Dialog box at run time.
Geolocation
Auto Erase
OS UPGRADES
Android OS:
Millions of phones under contract cannot be updated
0.4% run the latest version
iOS:
Apple disallows old devices to update permanently
vulnerable to easy attacks
~90% run one of the two latest versions
PUBLISHING
APP APPROVAL
Android OS:
Very quick!
iOS:
Days.. and days.. and days..
Many restrictions
PAYMENTS AND AVAILABILITY
Android OS:
Developer pays $25 one time
Developer earns 70% of revenue
Several Stores: Google Play, Amazon…
Paid apps available in 132 countries
No screenshots of apps, only short descriptions
PAYMENTS AND AVAILABILITY
iOS:
Developer pays $99 annually
Developers earns 70% of revenue
App Store only
Paid apps available in 155 countries
5 screenshots and description
WHICH IS BETTER?
OS Mkt Share
# of Apps
Revenue
Developer
Interest
Easiness of PL
Platform
Multitasking
Security
OS Upgrades
App Approval
Payments & Avail.
END OF CHAPTER