Fundamentals: Mobile App Development

Ben DuPont03/02/12

Fundamentals: Mobile App Development

Mobile application development will play an increasingly important role for organizations that need to reach employees and customers with purpose-built apps. If your organization is considering creating mobile applications, we provide essential information to help you get started. This report covers development basics for the four major mobile platforms: Apple iOS, Google Android, RIM BlackBerry and Microsoft Windows.

Each platform has a preferred development language (for instance, it’s Java on Android and Objective-C for iOS), but app writers can also work with cross-platform tools. This report looks at two popular Adobe cross-platform options: Air and PhoneGap. Air will let developers write for Android, iOS and BlackBerry; support for Windows isn’t yet available. Developers can create apps for all four platforms ­using PhoneGap. However, developers should also consider the trade-offs of cross-development app creation, because some features may not translate well from platform to platform.

Developers must also pay close attention to security. That means taking advantage of security functions made available on the mobile platforms, including support for remote-wipe capabilities, secure protocols such as SSL/TLS, and cryptographic functions for device encryption and hashing. Developers should also use best practices to write secure code. While traditional software exploits such as buffer overflows have yet to emerge on mobile platforms, the ubiquity of smartphones and tablets increases the chances that criminals will target software vulnerabilities on these devices.

Finally, this report offers advice on how organizations can decide on the platforms to target for their employees and customers, and the requirements that developers have to meet to get access to development tools and to submit apps to markets such as Apple’s App Store. (S4270312)

3 Author’s Bio4 Executive Summary5 The Big Four Platforms6 Development Environments9 Cross-Platform Development10 Mind the Gap11 Build In Security14 Good Questions15 Making Apps Public16 More Like This