Essential Technologies and Methodologies for Mobile/Handheld App Development

Essential Technologies and Methodologies for Mobile/Handheld App Development

Wen-Chen Hu (University of North Dakota, USA), Naima Kaabouch (University of North Dakota, USA) and Hung-Jen Yang (National Kaohsiung Normal University, Taiwan)
Copyright: © 2015 |Pages: 12
DOI: 10.4018/978-1-4666-5888-2.ch560
OnDemand PDF Download:
$30.00
List Price: $37.50

Chapter Preview

Top

Introduction

The emerging smartphones have created many kinds of applications that are not possible or inconvenient for PCs and servers, even notebooks. Mobile application stores (or app stores) sell or provide mobile applications/services for handheld devices such as smartphones or tablet computers. The applications/services are not necessarily from the storeowners. Many of them are from the third parties such as independent developers. A wide variety of mobile applications is available on the stores. Popular applications include location-based services, mobile games, mobile offices, and music. Many of the apps are free and most of them just cost few US dollars each. App stores have existed since the launch of handheld devices in the ’90s, but their scales were relatively small. The stores were normally set up by device manufacturers and the number of its apps was small like hundreds. When Apple launched its iPhones in 2007, they opened an App Store subsequently in 2008. They claimed the store has over 50 billion apps download, and has paid out more than $15 billion to developers since its inception. There are more than one million apps available in 2013 (Apple, 2014). The highly popular iPhones help the sales and development of applications. On the other hand, the large number of apps helps the sales of iPhones too. It is a win-win situation for both of the Apple, Inc. and app developers. Witnessing the success of the App Store, other mobile operating system providers realized they might be left behind if they did not have this kind of stores for their operating systems. They set up their own app stores immediately. Some of the major stores are given in Table 1 (Hu, 2014). The highly popular apps create great opportunities for IT companies and workers. However, traditional desktop programmers have problems switching to handheld programming because it requires a different approach from desktop programming (Kiely, 2001). This chapter introduces essential technologies for mobile/handheld computing, so more IT workers can join the mobile trend of computing.

Table 1.
Major mobile application stores
CompanyMobile Application Store
NameMajor Mobile ProductsNameMajor Operating Systems SupportedLaunch Date
Apple, Inc.Smartphone
Mobile operating system
App StoreiPhone OS07/10/2008
AmazonE-readerAppstoreAndroid03/21/2011
GetJarNoneGetJarAlmost allxx/xx/2004
MicrosoftMobile operating systemWindows Phone
Apps+Games Store
Windows Phone10/06/2009
Nokia (Symbian)Smartphone
Mobile operating system
Ovi StoreWindows Phone02/16/2009
Open Handset Alliance (Google)Mobile operating systemGoogle PlayAndroid10/22/2008
Palm (HP)Smartphone
Mobile operating system
App CatalogWebOS06/06/2009
Research In MotionSmartphone
Mobile operating system
BlackBerry WorldRIM04/01/2009
SamsungSmartphone
Mobile operating system
Samsung AppsAndroid
Bada
Windows Phone
06/xx/2010
SonySmartphoneAppsAndroid
Symbian
Windows Phone
02/xx/2004

Key Terms in this Chapter

Mobile/Handheld Computing: It is to use handheld devices such as smart cellular phones and PDAs (Personal Digital Assistants) to perform wireless, mobile, handheld operations such as personal data management and making phone calls.

Windows Phone: Windows Phone is a mobile operating systems developed by Microsoft and is aimed at the consumer market. It is derived from Windows Mobile platform, which focuses on the enterprise market instead. Windows Phone includes a new user interface of flat, colored live tiles and a laterally scrolling canvas for accommodating more tiles.

Eclipse IDE (Integrated Development Environment): Eclipse is a multi-language software development environment, which is used to facilitate application development in various languages (such as C++ and Java) by installing appropriate plug-ins.

Apps: A mobile app (or application) is a kind of software designed to run on mobile handheld devices such as smartphones. Examples of apps are calendars, video games, and short message services (SMS).

iOS (previously iPhone OS): It is a mobile operating system developed by Apple Inc. for its mobile/handheld devices such as iPhone and iPad. iOS is derived from OS X (used for Apple's computers such as iMac and MacBook) and both are based on the Unix. It includes four abstraction layers: (1) the Core OS layer, (2) the Core Services layer, (3) the Media layer, and (4) the Cocoa Touch layer. iOS includes a user interface interacted with multi-touch gestures such as swipe, tap, and pinch, all of which have specific definitions in iOS.

Server-Side Handheld Programming: It is design and development of handheld software such as CGI programs that reside on the servers.

Android: It is a software stack for mobile devices that includes an operating system, middleware, and key applications such as contacts. It is a project proposed by the Open Handset Alliance, a group of more than 30 technology and mobile companies including Google, Inc.

Mobile Handheld Devices: They are small general-purpose, programmable, battery-powered computers, but they are different from desk- or lap- top computers mainly due to the following special features: (1) limited network bandwidth, (2) small screen/body size, and (3) mobility.

Client-Side Handheld Programming: It is design and development of handheld software such as Java ME programs that reside on the handheld devices.

Complete Chapter List

Search this Book:
Reset