Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

CE0941A Lecture1

No description
by

John Isaacs

on 15 October 2014

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of CE0941A Lecture1

App Distribution
Application Models
There are other platforms such as Mer, MeeGo, Brew and a few specialised Linux distros.
These are largely community driven and their market share is so low its not worth it for commercial developer to consider them.
Apps for these platforms will be developed by hobbyists.
Other
Do you have a
Smartphone
Basic phone
Survey 1
Predicted Future?
Depends on what you mean
Apple as a single manufacturer sell more devices
But Android is installed on more devices
Symbian, Bada, Blackberry and even Windows Mobile not doing well.
Windows Mobile was expected to catch IOS with the release of Windows 8. This didn't happen.
Who is winning?
Google Play
Rather than using a general VM write your own for your brand
Allows for a richer set of APIs
Run the Java Byte Code on your VM
Seems a perverse solution but then again:
Blackberry
Android - Dalvik
Write your own JVM
JME is a write one deploy many times model
Java compiles to Java Byte Code which can be run on the JVM
Need to get the JVM implemented on a device and then all Java apps can run on it
JME is a special Java Virtual Machine for mobiles
Very strong solution but JME is extreamly dated
Use a VM
Write in the native language for the device
iPhone – Objective C
Windows mobile C
Only works of the market is big enough
What about the markets your missing?
Does this matter?
Native Language
The web runs on a variety of devices so use this to good effect
All phone have a browser
Write application in HTML5, CSS3, Javascript (this provides client coding) and PHP (providing server coding)
Link to web pages through a shortcut on desktop
Embed into a pre-written shell app
Web Approach
Commercial PC application development usually means Windows and possibly Linux
At most 2 platforms
Mobile development could mean at least 5 or 6 platforms
Many developers simply develop for market leaders
Viewranger for example have 3 versions:
iPhone
Android
Symbian
If you have a blackberry - tough
Development
Why do you choose a specific network?
Coverage
Price
Add ons
Brand loyalty
Because they offer better services
Type of Phone offered
Survey 4
Which network are you on?
Orange
T-mobile
O2
Vodafone
3
Giff Gaff
Other Pseudo Network (Tesco, Asda etc)
Survey 3
What type of phone do you have:
iPhone
Android
Blackberry
Windows Phone
Bada
Symbian
Other
Survey 2

Oracle (previously Sun)
Java Micro Edition
Been around for ages
Open source
Uses a virtual machine, so is largely platform independent
Mainly older or very basic phones
JME
Microsoft
First Released 2010
Direct successor to Windows Mobile
Latest version Windows Phone 8
Multiple hardware manufacturers
Closed source OS
OS updates released depending on carrier
Windows Phone
Apple
Development Started 2005
First Released 2007
Now in its 5th generation, iPhone 5
Single manufacturer
Closed source proprietary OS developed by manufacturer – iOS
OS updates released en mass to all devices (newest devices)
iPhone/ IOS
Mobile Platforms
Many older phones can multitask, play games, keep appointments etc. But you would hardly describe them as smartphones.

For the sake of a definition – a smartphone is one where there is an underlying operating system and the phone can deliver a range of processes to the user.
What is a Smart Phone?
What can a mobile do?
% of total global smartphone sales
Current Battle
Windows Phone
Market Place
OVI
Amazon Appstore
App Store
Accenture (subsidiary of Nokia)
First release 1997 (Psion epoc32)
Latest release Symbian^3 (2010)
Single manufacturer
Previously open-source, now closed source
Nokia have now seemed to drop development and are moving all future phones to Windows Phone
Symbian
Samsung
First Released 2012
Latest version 2.2.1 (November 2013)
Single hardware manufacturer
Mixed, Open source & propriety OS, Closed Source SDK
Tizen
Research In Motion (RIM)
First released 1999
Now on generation 10
Single manufacturer
Single closed source proprietary OS developed by manufacturer – Blackberry OS
Blackberry
No official definition
Has more features than a basic phone
what is a basic phone?
Is a high end mobile phone
so only the select few are Smartphones?
Can do more than makes calls
so everything is a Smart phone ?
See http://blog.uswitch.com/2011/04/21/just-what-is-a-smartphone-anyway/
What is a Smart Phone?
Ok so you have made your app for all the platforms
Now you want to sell it
You can just stick it on your website and people can download it for a fee right?
Or you can put it in a nice box and sell the CD?
Depends, probably not.
Blackberry App World
Google
Development Started 2005
First Released 2007
Now in its 9th generation, KitKat (4.4.4)
Multiple hardware manufacturers
Open source OS developed
OS updates released depending on manufacturer
Android
Smart Phones
What Actually Happened
Big Picture
Technology will continue to evolve and we need to keep up
The basic tools we use for development will not change but how they are used might
If you only develop for the big boys, you might miss an emerging opportunity

Introduction to
Mobile Programming
CE0941a
Lecture 1
Introduction

This is an introduction to mobile computing
I will show you a number of ways of developing on a mobile device will (tablet and phone)
I will introduce mobile device specific design issues which may limit or enhance you application
You will create a game or app using one of the development strategies
Course Content
What can a mobile do?
What phones are available?
What is a Smart phone
Which network?
Applications
Application Models
The current battle
Overview
Labs Room 4506
Tuesday 13-15 CGAD & CGT Group A

Friday 09-11 Computing Group B
Comp & Net,
Ethical Hacking
& Anyone else


Full transcript