Introduction to Mobile Computing Dr. Frank McCown Harding University Spring 2010 An Overview of...

Post on 31-Mar-2015

220 views 3 download

Tags:

Transcript of Introduction to Mobile Computing Dr. Frank McCown Harding University Spring 2010 An Overview of...

Introduction to Mobile Computing

Dr. Frank McCownHarding University

Spring 2010

An Overview of Mobile Devices and Developing Mobile Applications

Types of Mobile Devices

• Handheld devices• Handheld computers• Personal Digital Assistants• Palmtops• Smartphones

Pocket PC Phone

http://en.wikipedia.org/wiki/Windows_Mobile http://en.wikipedia.org/wiki/Image:Modern_Pocket_PC.png

Blackberry Storm

http://en.wikipedia.org/wiki/File:Blackberry_Storm.JPG http://www.mobileafrica.net/images/apple-iphone.jpg

iPhone

Archos 5 Internet Tablet

http://techplore.com/technology/wp-content/uploads/2009/10/archos-5-internet-tablet_1.jpg http://homebiss.blogspot.com/2009/11/motorola-droid-iphone-3gs.html

Motorola DROID

http://www.wired.com/reviews/product/pr_nexus_one

Google Nexus One• Retail: $530• Not tied to single provider• 3.7-inch 800 x 400-pixel OLED screen• No support for multitouch• 512 MB of built-in flash memory •Preloaded 4 GB SD card•Ubiquitous voice recognition• 5-megapixel camera with zoom and flash• Navigation system using Google Maps and GPS

http://www.appleinsider.com/articles/09/08/21/canalys_iphone_outsold_all_windows_mobile_phones_in_q2_2009.html

Mobile Devices – The Good

• Always with the user• Typically GPS capable• Typically have accelerometer• Many apps are free or low-cost

Mobile Devices – The Not-So-Good

• Limited screen size and colors• Limited battery life• Limited processor speed• Limited and slow network access• Limited or awkward input: soft keyboard, phone

keypad, touch screen, or stylus• Limited web browser functionality• Often inconsistent platforms across devices• Warning: Blackberry thumb

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

Native App Development Environments

• Java ME • .NET Compact Framework (C++, C#, VB.NET) for

Windows Mobile• Qualcomm’s BREW (C or C++)• Symbian (C++)• BlackBerry (Java)• Android (Java)• iPhone (Objective-C)• Is having so many choices a good thing?

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.

xCode IDE & iPhone Emulator

http://developer.apple.com/iphone/library/referencelibrary/GettingStarted/Creating_an_iPhone_App/index.html

Eclipse and Android Emulator