Week 1 Introduction
Week 1 Introduction
Objective
• Overview
• Contents/Course Objectives
• Introduction to Mobile Application
Development
• Difference between cross and native platforms
Types of Mobile Devices
• Handheld devices
• Handheld computers
• Personal Digital Assistants
• Palmtops
• Smartphones
Mobile Devices – The Good
• Always with the user
• Typically GPS capable
• Typically have accelerometer
• Many apps are free or low-cost
Mobile Applications
• What are they?
– Any application that runs on a mobile device
• Types
– Web apps: run in a web browser
• HTML, JavaScript, Flash, server-side components, etc.
– Native: compiled binaries for the device
Development Environments
• Most platforms have an SDK that you can
download and build against
• Every platform has an emulator that you can
use to test your apps
• Most emulators are configurable to match a
variety of mobile devices
– Various screen sizes, memory limitations, etc.
APPROACHES TO MOBILE
DEVELOPMENT
NATIVE, WEB OR HYBRID?
NATIVE APPS
Different tools, languages and distribution channels associated with leading mobile operating systems
* IBM, Native, web or hybrid mobile app development, 2012. IBM Software Thought Leadership White Paper
NATIVE APPS
PROS CONS
PROS CONS
* http://setandbma.files.wordpress.com/2011/12/wora-platforms.png
PHONEGAP
From Nitobi now acquired by Adobe
TECHNICAL ARCHITECTURE:
• Web approach using hybrid model.
• Single source codebase written HTML 5, CSS 3, JavaScript running on a mobile browser
embedded in a native app wrapper.
• Device capabilities accessed through device-independent JavaScript API.
SUPPORTED PLATFORMS:
• iOS, Android, Blackberry, WP7, Symbian, Palm, Samsung Bada
IDE USED:
• MAC OS X & XCODE for iPhone & iPad.
• Google Android SDK, Eclipse ADT Plugin, Ant as well as Eclipse IDE for Android.
PHONEGAP
From Nitobi now acquired by Adobe
ARCHITECTURE
:
* http://arnab.ch/images/phonegap-architecture.jpg
PHONEGAP
From Nitobi now acquired by Adobe
STRENGTHS:
• Native wrapper source code is provided so it can be customized further.
• Simple ‘drop-in libraries’ concept makes it easier to develop.
• Lowers barriers of adoption for web developers.
WEAKNESSES:
• Lack of support for native UI components, design patterns & development tools.
• The capabilities offered by the framework is limited to what a “WebView” can do.
• Different projects for different platforms
• Different JavaScript files on each platform for PhoneGap itself and plugins
• No native UI support
• Java, Objective-C or C# requirement to create new plugins
• No built-in support for push notifications
xCode IDE & iPhone Emulator
http://developer.apple.com/iphone/library/referencelibrary/GettingStarted/Creating_an_iPhone_App/index.html
Android Studio and Android Emulator