Introduction to Mobile Computing An Overview of Mobile Devices and Developing Mobile Applications Dr.
Download ReportTranscript Introduction to Mobile Computing An Overview of Mobile Devices and Developing Mobile Applications Dr.
Introduction to Mobile Computing An Overview of Mobile Devices and Developing Mobile Applications Dr. Frank McCown Harding University Spring 2010 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 iPhone http://en.wikipedia.org/wiki/File:Blackberry_Storm.JPG http://www.mobileafrica.net/images/apple-iphone.jpg Motorola DROID 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 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.wired.com/reviews/product/pr_nexus_one 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