iOS Mobile Application Development

From RAD Studio
Jump to: navigation, search

Go Up to Types of Multi-Device Applications You Can Create

RAD Studio provides the tools that you need to develop applications that target the iOS platform. Using FireMonkey, you can create an iOS application and deploy it either for iOS simulators (Delphi) or for iOS devices (C++ or Delphi).

The procedure for developing iOS apps in RAD Studio is generally the same as the procedure for developing Android apps in RAD Studio. One significant difference is that PAServer and connection profiles are required for iOS development, whereas they are not used for Android development. Both iOS and Android require the addition of an SDK for the target platform.

Comparison of Development Requirements for iOS and Android
iOS Requirements Android Requirements

Joining the Apple Developer Program

Android developer site is open to everyone

Acquire a developer certificate

Create a keystore file

Create and install a Provisioning profile

Does not apply.

Create a connection profile

Does not apply

Install PAServer on the Mac

Does not apply.

Run PAServer on the Mac

Does not apply.

Connect to iOS device by USB connection

Install the USB driver for your Android device and connect to your Android device by USB connection.

Add an iOS (Device or Simulator) SDK

Add an Android SDK

Does not apply.

Verify or set the Uses Permissions needed for your Android application

Hardware Requirements

In addition to your development PC, you need the following to develop multi-device applications for iOS:

  • A Mac running OS X
  • An iOS device, connected to your Mac by USB cable

See FireMonkey Platform Prerequisites for a list of system requirements for your development PC and for the Mac.

Both the Mac and your development system must be on a common network, such as a local area network.

Preparing Your Development Environment

Working with a Mac and a PC

When you develop applications for iOS, in addition to your development system, you need to use the Mac for installing iOS development and distribution certificates, for running the Platform Assistant, as well as for other necessary tasks detailed below.

There are several ways you can configure a PC and a Mac to work together. See Working with a Mac and a PC to decide which configuration works best for you, and to learn how to apply that configuration to your development environment.

Configuring the Mac

On the Mac, you need to do the following:

  1. Install Xcode.
  2. From Xcode, install the Xcode Command Line Tools, which are required to sign your applications, so you can run them on an iOS device.
    Notice: Beginning from the Xcode version 6.1, the Xcode Command Line Tools are automatically installed during Xcode installation.
  3. Install the Platform Assistant. The Platform Assistant, distributed with RAD Studio, allows the IDE to pull the iOS SDK files from the Mac, and to run your applications on iOS devices connected to the Mac.
  4. Run the Platform Assistant. RAD Studio needs you to have the Platform Assistant running in your Mac to run, debug or deploy your application for the iOS Device - 32 bit, iOS Device - 64 bit and the iOS Simulator target platforms.

Configuring Your Development System

On your development system, open RAD Studio and do the following:

  • Create a connection profile for the OS X platform, which is an intermediate platform that supports the iOS Device - 32 bit, iOS Device - 64 bit and the iOS Simulator target platforms.
    • You need this connection profile to allow the IDE to connect to the Platform Assistant, running on the Mac.
  • Add an SDK to the IDE for the iOS Device - 32 bit and iOS Device - 64 bit target platforms. RAD Studio creates in your development system a local file cache of the iOS SDK from the Mac, so you can build your applications for iOS locally.

Developing Your Application

To create a new multi-device application in RAD Studio, select either File > New > Multi-Device Application - Delphi or File > New > Multi-Device Application - C++Builder, select one of the choices, and click OK. For information about the different choices, see Types of Multi-Device Applications You Can Create. The default target platform is Android, although iOS target platforms are available in new multi-device applications.

You can use both the FireMonkey framework and the RTL library to develop your multi-device application. See Creating an iOS App.

The best way to get started with iOS application development is to follow the mobile tutorials: Mobile Application Development (iOS and Android).

Preparing to Code Sign Your Application

Note: You do not need to be able to sign your application in order to run it on the iOS Simulator.

In order to run your application on an iOS device or distribute your application to others, you must:

  1. Join the Apple Developer Program. Membership in the Apple Developer Program allows you to obtain from Apple all the necessary certificates and tools to run and deploy applications for iOS devices.
  2. Acquire an iOS developer certificate, which is necessary to sign your application.
  3. Provision your application, so you can run it on your iOS devices.

Running Your Application

The following pages describe the required steps to run your application on an iOS simulator or an iOS device:

Deploying Your Final iOS Application

Before each release of your iOS application, you should check that every setting is properly configured. See Preparing an iOS Application for Deployment.

After your iOS application is ready for final deployment, you can choose from two different methods to distribute your application: Ad hoc distribution or Application Store distribution.

The steps to deploy your application vary depending on the chosen distribution method:

For additional information about these distribution methods, see the Apple documentation.

Known Issues

  • If you encounter compile time errors when targeting iOS 9.2 using C++Builder or RAD Studio 10 Seattle, see iOS 9.2 C++ Hotfix for information on how to fix it.
  • If you encounter an issue with the new iOS 9 "Apple Transport Security" feature, see Restriction for HTTP protocol for information on how to fix it.

iOS Topics

See Also