Professional Mobile Application Development
Buy Rights Online Buy Rights

Rights Contact Login For More Details

More About This Title Professional Mobile Application Development

English

Create applications for all major smartphone platforms

Creating applications for the myriad versions and varieties of mobile phone platforms on the market can be daunting to even the most seasoned developer. This authoritative guide is written in such as way that it takes your existing skills and experience and uses that background as a solid foundation for developing applications that cross over between platforms, thereby freeing you from having to learn a new platform from scratch each time. Concise explanations walk you through the tools and patterns for developing for all the mobile platforms while detailed steps walk you through setting up your development environment for each platform.

  • Covers all the major options from native development to web application development
  • Discusses major third party platform development acceleration tools, such as Appcelerator and PhoneGap
  • Zeroes in on topics such as developing applications for Android, IOS, Windows Phone 7, and Blackberry

Professional Mobile Cross Platform Development shows you how to best exploit the growth in mobile platforms, with a minimum of hassle.

English

Jeff McWherter is the Director of Development at Gravity Works Design and Development. He is a founding member and current Vice President for the Greater Lansing Users for .NET.

Scott Gowell is a senior developer at Gravity Works Design and Development. He develops mobile applications for clients and speaks at local user groups.

English

Introduction xxiii

Chapter 1: Preliminary Considerations 1

Why You Might Be Here 2

Competition 2

Quality vs. Time to Market 2

Legacy System Integration 2

Mobile Web vs. Mobile App 3

Cost of Development 3

Hardware 3

Software 4

Licenses and Developer Accounts 5

Documentation and APIs 5

The Bottom Line 6

Importance of Mobile Strategies in the Business World 6

Why is Mobile Development Difficult? 6

Mobile Development Today 8

Mobile Myths 8

Third-Party Frameworks 9

Appcelerator Titanium Mobile Framework 9

Nitobi PhoneGap 10

MonoDroid and MonoTouch 10

Summary 10

Chapter 2: Diving into Mobile: App or Website? 11

Mobile Web Presence 12

Mobile Content 13

Mobile Browsers 14

Mobile Applications 17

You’re a Mobile App If . . . 17

When to Create an App 18

Benefits of a Mobile App 22

Marketing 24

Quick Response Codes 25

The Advertising You Get from the App Market 26

Third-Party Markets 32

Your App as a Mobile Web App 33

Summary 36

Chapter 3: Creating Consumable Web Services for Mobile Devices 37

What is a Web Service? 37

Examples of Web Services 38

Advantages of Web Services 39

Web Services Languages (Formats) 40

eXtensible Markup Language (XML) 40

JavaScript Object Notation (JSON) 42

Transferring Nontextual Data 42

Creating an Example Web Service 42

Using the Microsoft Stack 43

Using the Linux Apache MySQL PHP (LAMP) Stack 77

Debugging Web Services 83

Tools 83

Advanced Web Service Techniques 85

Summary 86

Chapter 4: Mobile User Interface Design 89

Effective Use of Screen Real Estate 90

Embrace Minimalism 90

Use a Visual Hierarchy 90

Stay Focused 90

Understanding Mobile Application Users 91

Proximity 91

Closure 91

Continuity 92

Figure and Ground 92

Similarity 92

The Social Aspect of Mobile 92

Usability 93

Accessibility 94

Understanding Mobile Information Design 96

Information Display 96

Design Patterns 96

Content Structure and Usage 107

Understanding Mobile Platforms 109

Android 110

iOS 110

BlackBerry OS 111

Windows Phone 7 112

Mobile Web Browsers 112

Using the Tools of Mobile Interface Design 113

User Acceptance Testing 113

Information Design Tools 114

Summary 115

Chapter 5: Mobile Websites 117

Choosing a Mobile Web Option 118

Why Do People Use Your Website on Mobile Devices? 118

What Can Your Current Website Accommodate? 118

How Much Do You Want to Provide for Mobile Users? 119

Adaptive Mobile Websites 120

Get Your Queries in Place 121

Add Mobile Styles 125

Dedicated Mobile Websites 140

Mobile Web Apps with HTML5 143

What Exactly is HTML5? 143

And What Exactly is a Mobile Web App? 144

How Do You Use HTML5 in a Mobile Web App? 144

Make Your Mobile Web App Even More Native 148

Summary 150

Chapter 6: Getting Started with Android 151

Why Target Android? 152

Who Supports Android? 152

Android as Competition to Itself 152

Multiple Markets and Market Locks 152

Getting the Tools You Need 153

Downloading and Installing JDK 153

Downloading and Installing Eclipse 153

Downloading and Installing the Android SDK 154

Downloading and Configuring the Eclipse ADT Plug-in 155

Installing Additional SDK Components 157

Development 158

Connecting to the Google Play 172

Getting an Android Developer Account 172

Signing Your Application 172

Android Development Practices 172

Android Fundamentals 172

Fragments as UI Elements 173

Ask for Permission 173

Mind the Back Stack 174

Building the Derby App in Android 174

Common Interactions 174

Offline Storage 176

Web Service 177

GPS 180

Accelerometer 181

Summary 182

Chapter 7: Getting Started with iOS 183

The iPhone Craze 183

Apple in Its Beauty 184

Apple Devices 185

Getting the Tools You Need 187

Hardware 187

xCode and the iOS SDK 191

The iOS Human Interface Guideline 193

iOS Project 193

Anatomy of an iOS App 194

Getting to Know the xCode IDE 195

Debugging iOS Apps 199

The iOS Simulator 199

Debugging Code 200

Instruments 204

Objective-C Basics 204

Classes 205

Control Structures 206

Try Catch 207

Hello World App 208

Creating the Project 208

Creating the User Interface 211

Building the Derby App in iOS 214

User Interface 215

Team Roster 217

Details 219

Leagues and Team Names 220

Other Useful iOS Things 223

Offline Storage 223

GPS 224

Summary 227

Chapter 8: Getting Started with Windows Phone 7 229

New Kid on the Block 229

Metro 230

Application Bar 230

Tiles 232

Tombstoning 233

Getting the Tools You Need 234

Hardware 234

Visual Studio and Windows Phone SDK 234

Windows Phone 7 Project 236

Silverlight vs. Windows Phone 7 236

Anatomy of a Windows Phone 7 App 237

The Windows Phone 7 Emulator 238

Building the Derby App in Windows Phone 7 239

Creating the Project 239

User Interface 240

Derby Names 241

Leagues 243

Distribution 244

Other Useful Windows Phone Things 245

Offline Storage 245

Notifications 247

GPS 249

Accelerometer 250

Web Services 252

Summary 252

Chapter 9: Getting Started with BlackBerry 253

The BlackBerry Craze 254

BlackBerry Devices 254

BlackBerry Playbook 259

Getting the Tools You Need 259

BlackBerry Developer Program 259

Code Signing Keys 260

BlackBerry Java Development Environment 260

Implementing the Derby App with BlackBerry for Java 265

BlackBerry Eclipse Specifics 269

BlackBerry Development with WebWorks 270

Other Useful BlackBerry Things 276

Offline Storage 277

Location Services 278

BlackBerry Distribution 280

Summary 280

Chapter 10: Getting Started with Appcelerator Titanium 283

Why Use Titanium? 284

Who is Using Titanium? 284

NBC 285

GetGlue 286

Getting the Tools You Need 287

Installing Titanium Studio 287

Downloading the Kitchen Sink 290

Development 291

Connecting Titanium to the Markets 294

Versioning Your App 296

Building the Derby App in Titanium 297

Common UI Patterns 297

Offline Storage 301

Web Service 302

GPS 305

Accelerometer 306

Summary 308

Chapter 11: Getting Started with PhoneGap 309

History of PhoneGap 309

Why Use PhoneGap? 310

Who is Using PhoneGap? 310

METAR Reader 310

Logitech Squeezebox Controller 311

Wikipedia 311

Differences between PhoneGap and HTML5 311

Getting the Tools You Need 312

Installing PhoneGap for iOS 312

Installing PhoneGap for Android 314

Installing PhoneGap for Windows Phone 7 317

PhoneGap Tools and IDE 319

PhoneGap Project 323

Anatomy of a PhoneGap Application 323

Creating User Interfaces 324

Debugging 324

Useful JavaScript Libraries 325

Building the Derby App in PhoneGap 330

Other Useful Phone Gap Things 335

Pickers 336

Offline Storage 337

GPS 339

Accelerometer 340

Connecting PhoneGap to the Markets 341

Summary 341

Chapter 12: Getting Started with MonoTouch and Mono for Android 343

The Mono Framework 343

MonoTouch 344

Mono for Android 345

Assemblies 346

Why MonoTouch/Mono for Android? 347

Downsides 347

Xamarin Mobile 348

Getting the Tools You Need 350

Mono Framework 350

MonoTouch 351

Mono for Android 352

Getting to Know MonoDevelop 353

Debugging 354

MonoTouch Specifics 355

Mono for Android Specifics 356

Mono Projects 357

Anatomy of a MonoTouch App 358

Anatomy of a Mono for Android App 361

Building the Derby App with Mono 362

MonoTouch 362

Mono for Android 368

Other Useful MonoTouch/Mono Features 374

Local Storage 374

GPS 375

Summary 377

Index 379

loading