3. A mobile application is
software application de
signed to run-
on smartphones,
tablet computers and
other mobile devices.
Mobile application
began appearing in 2008
and are typically
operated by the owner
of the mobile operating
system, such as the
Apple App Store, Google
Play, Windows Phone
Store, and BlackBerry
App World.
4. 1. Browser Access :- The applications which
we are accessing through native browser.
Ex : www.yahoo.com, www.google.com,
m.redbus.in, etc
2. Hybrid Apps - Web :- We are installing the
application in our device and for the
functioning of that particular application
internet is required. Ex : Social Networking
Apps(Facebook, Twitter), Instant
Messengers(Skype), E-Commerce(Flipkart),
Internet Speed Testing(Speedtest.net), etc.
5. 3. Hybrid Apps – Mixed :-
We are installing the
application in our device
and if required we are
connecting it to internet
also. Ex : Few games in
which we can play alone
and we go online too for
playing with different
players(multi player).
4. Native Apps :- The
applications which we are
installing in our device. Ex
: Reminders, Few Games,
etc.
6. Native Apps- Which can be installed
in the devices and the app does not
need any data transfer to the server.
With out network these apps work in
the device. The data about the app
will be stored in the device itself.
Example Gaming applications.
Client Server apps- They can be
called Semi native apps. Here the
app can be installed in the device.
But the with out a network it cannot
be launched. Because It gets the
data from the server. With out the
data the app will not proceed
further. Example Commercial apps
like Banking app.
7. Mobile Web applications.- They
can be called as Mobile browser
apps as these are not installed in
the device. these can be accessed
using the mobile browser by hitting
the url of the web. Here the device
memory size is not all important as
neither of the from or the app data
is stored in the device. It is
completely dependent on the
quality of the browser. Every thing
comes from the server and
rendered in the browser when you
hit the url.
10. Mobile App Development Phases
A mobile app development life cycle usually
consists of the following phases:
1. The Discovery Phase
2. The Design Phase
3. The Development & Testing Phase
4. Maintenance & Updates Phase
11. 1. The Discover Phase
Tasks
Requirements analysis
System definition
Prototyping
Benefits
Framework driven requirement specification
Get it right the first time by prototyping your project
Improve usability and user buy-in by letting them use the prototyped
system
Manage user/customer expectations
Manage IT staff expectations
More accurate size and cost estimate
12. 2. The Design Phase
Tasks
System design
Database design
Business Process Integration design
Benefits
Choice of deployment platform
Choice of Application Interface
Choice of user interface (browser, Windows rich-client or portable
devices)
Centralized/reusable business rules
Centralized/reusable business processes
Normalized database design
Framework driven design process
Reuse/integration of existing data and functions and systems
13. 3. The Development & Testing
Phase
Tasks
Develop system
Business Process Integration
User acceptance testing
System and performance testing
Implementation/deployment
Benefit
One integrated suite of development tools
Lower skill requirements
Multi skilling
Downplay/hide technology focus
Easy-to-learn and master
Task and change control tracking
14. 4. Maintenance & Updates Phase
Tasks
Ongoing system maintenance
Extend and enhance functionality
Benefits
Centralized/reusable business rules
Centralized/reusable business processes
Repository based impact analysis
15. Software’s Used to Develop
Mobile Application’s
• Appery.io
• Phonegap
• Mobile Roadie
• TheAppBuilder
• Good Barber
• Appy Pie
• AppMachine
• GameSalad
• BiznessApps
16. Let’s make an app!
http://www.github.com/claytical/magic8
17. Getting Started
• You need whatever IDE and SDK you would
normally need.
– iOS requires Xcode and the iOS SDK
(https://developer.apple.com/)
– Android requires Eclipse and the Android SDK
(http://developer.android.com/sdk)
19. Getting Started
• Download the latest build
– http://cordova.apache.org/#download
• Extract the zip file to wherever you want it
• Extract the zip file inside the zip file
corresponding to the device you’re targeting
25. Make a Purple Button
.purple {
color: #fef4e9;
border: solid 1px #551A8B;
background: #8A2BE2;
background: -webkit-gradient(linear, left top, left bottom,
from(#8A2BE2), to(#551A8B));
}
.purple:active {
color: #fef4e9;
background: -webkit-gradient(linear, left top, left bottom,
from(#551A8B), to(#694489));
}
26. The JavaScript
• Clean up index.js
– It has some extra stuff we don’t need
• Add zepto.js for easy manipulation
– You can use whatever framework you like
• Add social.js for our Social Framework Plugin
– This is iOS specific
27. Some More JavaScript
var answers = ['It is certain', 'It is decidedly so', 'Without a doubt', 'Yes – definitely',
'You may rely on it', 'As I see it, yes', 'Most likely’];
function getAnswer() {
$('#asking').hide();
$('#answering').show();
var selectedResponse = Math.floor((Math.random()*20));
$('#answer').text(answers[selectedResponse]);
}
function newQuestion() {
$('#question').val("");
$('#asking').show();
$('#answering').hide();
}
28. Use the Plugin with JavaScript
function fbResults() {
var qa = $('#question').val() + " " + $('#answer').text() + " #magic8";
SocialFrameworkPlugin.postToFacebook( shareSuccess, shareError,
qa);
}
function shareSuccess() {
console.log("Sharing Successful");
}
function shareError() {
console.log("Error sharing");
}
IdE- An integrated development environment (IDE) or interactive development environment is a software application that provides comprehensive facilities to computer programmers for software development. An IDE normally consists of a source code editor, build automation tools and a debugger. Most modern IDEs offer Intelligent code completion features.SDk- A software development kit (SDK or "devkit") is typically a set of software development tools that allows for the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar development platform.