A Smartphone Cornucopia!

It simplifies things a bit that the topic of this book is outsourcing native apps for Apple devices. That narrows the focus and makes the topic much straightforward. If we were to take on the topic of device app development outsourcing generally, with so many devices and features and requirements – things could get very complicated very quickly. One of the most confusing aspects of device apps is learning about all the devices.

Apple Device Overview

The common denominator of iPhones, iPads, and iPod Touches is that they run the same operating system, known as the iOS. (The operating system is the software that allows you use and manage the device – like Windows 7 or Window 8 for a PC. Apps and programs also have to interact with operating system.) The iOS version is often included when referencing the iOS, for example iOS 6.1. The iPhone started with iOS 1.0, and every new iOS version released came with new features and increased functionality and processing power.

An iPhone 5

Compatibility between operating systems is sometimes a concern. If your developer creates an app for iOS 6.1 will it work on an older phone running iOS 4.0? It is hard to provide any specific advice here, since iOS revisions and compatibility is a very dynamic thing. What is true today regarding a specific iOS could be different tomorrow or next week. However, a general rule of thumb is that apps should be backward compatible with recent iOS versions still in use. For example, if iOS 7.0 is just released, but at least half of iPhone users will be using iOS 5 and iOS 6 for the foreseeable future then obviously you want you app to work on all of these OS versions.

Determining exactly what compatibility issues face your iPhone or iPad app in your timeframe will take some research and some discussion with the developer. You might want to add compatibility to the “Concerns” list in the concept design to make sure it is addressed with the developer.

Apps for Apple devices are programmed with the Objective C language. The C programming language, and it’s iterations like C++, Visual C, and Objective C, is one of the most powerful programming languages. Plus, many programming experts claim it creates the cleanest machine code – the ones and zeros that provide instructions to the processor. Clean machine code makes programs run faster and smoother, with fewer lockups or runtime errors.

An iPod Touch

All three Apple devices that can download and run apps can also connect to the Internet via wifi. This is not true of the standard iPod, which can do neither; it only plays music and videos. Of course, iPhones also have the capability to connect to the web through cellular data networks with a data plan, but this is an optional feature on iPads.

Other Devices

An iPad and iPad Mini

Since we are interested in Apple smart devices, we don’t need to go into great detail about other smart devices, but it is good to have a general impression of the marketplace and the major players.

The following table lists most of the well-known smartphones, tablets, etc., but it is by no means comprehensive. The table also lists the device operating system (OS) and the programming language(s) generally used for native app development. You may notice that a lot of devices use the Android operating system. Android is a Linux-based operating system developed specifically for devices. It is open source, meaning the operating system code is available and it can be freely modified by smart device producers. It also has permissive licensing which has made it very popular with device producers. With these attributes, along with smooth and functional operation, Android has become an industry standard.

Also note that the table lists devices generally, and doesn’t include every variation or iteration. For example, it seems there are countless versions of the Samsung Galaxy.

Common Handheld Devices 
Device NameOSApp Languages
Apple iPhoneiOSObjective C
Apple iPadiOSObjective C
Apple iPod Touch        (iTouch)Blackberry OSJava
Amazon Kindle FireAndroidJava
Asus Transformer InfinityAndroidJava
Barnes & Noble NookAndroidJava
Google Nexus 4AndroidJava
Google Nexus 7 & Nexus 10AndroidJava
HTC 1XAndroidJava
LG OptimusAndroidJava
Nokia LumiaWindows PhoneVisual Studio & Silverlight
Samsung GalaxyAndroidJava
Samsung Galaxy NoteAndroidJava
Sony XperiaAndroidJava
Microsoft SurfaceWindows RT or Windows 8Depends on OS

Welcome to the App World

You are now familiar with some of the basics about smart devices and the apps designed for them. You know that the phrase “Android devices” does not likely refer to futuristic robots, and when someone suggests Java you will understand that they are probably not talking about going out for coffee. With a little background knowledge you can move forward in you app development project with more confidence.

Now onto creating the app concept design!

Words From Our Happy Clients

Get Your Free Quote

Let’s Build Your App


USA Office

Space-O Infoweb Inc, Suite 100-B 8585 E. Bell Road
Scottsdale, Arizona 85260
+1 (650) 666-3071

Canada Office

2 County Court Blvd., Suite 400, Brampton, Ontario L6W 3W8
+1 (437) 488-7337

India Office

1005, 10th Floor, Abhishree Adroit, Mansi Circle,Beside Gwalia Sweet, Ahmedabad, Gujarat 380015
Sales: +91 7069268048
HR (Landline): +91 79 40084018
(M): 9601433998 / 9316757277