Technology - iOS

iOS is the operating system that runs on iPad, iPhone, and iPod touch devices. The operating system manages the device hardware and provides the technologies required to implement native apps. The operating system also ships with various system apps, such as Phone, Mail, and Safari, that provide standard system services to the user.

The iOS Software Development Kit (SDK) contains the tools and interfaces needed to develop, install, run, and test native apps that appear on an iOS device’s Home screen. Native apps are built using the iOS system frameworks and Objective-C language and run directly on iOS. Unlike web apps, native apps are installed physically on a device and are therefore always available to the user, even when the device is in Airplane mode. They reside next to other system apps, and both the app and any user data is synced to the user’s computer through iTunes.


iOS SDK

The iOS SDK is a governed system that is centralized on consistency; the many tools used by this system illustrate this focus. While some of the restrictions regarding cross-platform development have relaxed, the overall inclination for control over the app development process is still pronounced.

Some of the tools used in the iOS SDK are listed below, each covering a specific area that Apple would like included with whatever application is developed.

  • Cocoa Touch
    • Multi-touch events and controls
    • Accelerometer support
    • View hierarchy
    • Camera support
  • Media
    • OpenAL
    • Video playback
    • Image file formats
    • Quartz
    • Core Animation
    • OpenGL ES
  • Core Services
    • Networking
    • Embedded SQLite database
    • Core Location
    • CoreMotion
  • Mac OS X Kernel
    • TCP/IP
    • Sockets
    • Power management
    • File system
    • Security

In addition, the SDK contains the Xcode toolchain and an iPhone Simulator, a program used to simulate the iPhone on the developer's desktop. Core location is also a central framework used in the iOS.


Comparing Android and iOS

One of the biggest benefits to developing apps for Apple is the ease of Xcode. Get a MacBook and install it, and suddenly you can begin writing and installing apps. Android isn't that simple.

One of the main differences in developing apps for Apple is interface construction. When working with a fragmented ecosystem such as Android, you have to take into account all the various types of devices that run Android; with iOS, there are only two resolution scales to take into consideration.

Outside of the comparison between these two systems is HTML5, which allows developers to write apps that are more efficient and faster than Flash apps of yesteryear. HTML5 apps have a lot of benefits over native apps, but they should be used with caution for the time being due to their lack of web standards and missing libraries.

Both systems provide tools for development and distribution. Both have markets that are central to whatever the developer would like to provide in the way of applications. Both languages are being adjusted for cross-development platforms.

In conclusion, while Android offers more opportunity, Apple may offer better checks, which assure quality and distribution. Basically, a developer needs to consider which option best suits the application they intend to create and not worry about answering the flawed question of which mobile OS is better.

Contacts

Business Hours

  • Monday-Friday: 9am to 6pm
  • Saturday, Sunday and Public Holidays: Closed