Files
qt-creator/doc/src/ios/creator-ios-dev.qdoc

215 lines
8.5 KiB
Plaintext
Raw Normal View History

/****************************************************************************
**
** Copyright (C) 2016 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Creator documentation.
**
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
**
****************************************************************************/
/*!
\contentspage {Qt Creator Manual}
\previouspage creator-developing-generic-linux.html
\page creator-developing-ios.html
\nextpage creator-developing-qnx.html
\title Connecting iOS Devices
You can connect iOS devices to a Mac computer with a USB cable to
run applications built for them from \QC.
To be able to use \QC on \macos, you must install Xcode, and therefore,
you already have the tool chain for building applications for iOS. \QC
automatically detects the tool chain and creates the necessary
\l{glossary-buildandrun-kit}{kits} to build applications for and run them on
configured iOS devices.
You only need Qt libraries that are built for iOS. You can install them as
part of Qt 5.2, or later.
\section1 Configuring Devices
The connections between \QC and an iOS device are protected by using a
certificate that you receive from Apple when you
\l{https://developer.apple.com/programs/enroll/}
{enroll in the Apple Developer Program}. The certificate is copied to
the device when you configure the device.
The first time you connect the device to the Mac, you are asked to enable
developer mode on the device. The next time you connect the device, \QC
detects it automatically. To disable automatic connections to a device that
you do not use for development, select \uicontrol Preferences >
\uicontrol iOS, and deselect the \uicontrol {Ask about devices not in
developer mode} check box.
\note The process of configuring devices and the UI varies slightly
depending on the Xcode version that you use. We recommend that you use the
latest available Xcode version.
To configure connections between \QC and an iOS device:
\list 1
\li Make sure that you have Xcode and Qt for iOS installed.
\li Connect the device to the Mac computer with a USB cable.
\li Start Xcode to configure the device.
For example, in Xcode version 7.3.0, select \uicontrol Window >
\uicontrol Device > \uicontrol + > \uicontrol {Add Device} to add
the connected device.
\li To specify build settings:
\list 1
\li Open a project for an application you want to develop for the
device.
\li Select \uicontrol Projects > \uicontrol {Build & Run} to select
the kit for building applications for and running them on iOS.
\image qtcreator-ios-add-kit.png "Build & Run Settings"
\li In \uicontrol {iOS Settings}, select the development team to use
for signing and provisioning applications. You must configure
development teams and provisioning profiles in Xcode using an
Apple developer account.
\image qtcreator-build-settings-ios.png "iOS build settings"
\endlist
\li Select \uicontrol Run to specify run settings.
Usually, you can use the default settings.
When you run the project, \QC uses Xcode to deploy the application to the
device.
Your signing certificate is used to sign application packages for deployment
to the device.
\endlist
\note If you cannot deploy applications, because a provisioning profile is
missing, check that provisioning profiles are listed in Xcode by selecting
\uicontrol Xcode > \uicontrol Preferences > \uicontrol Accounts >
\uicontrol {View Details}. For more information about how to acquire and
install a provisioning profile, see Apple documentation.
\section1 Viewing Device Connection Status
When you connect an iOS device to a Mac computer with USB, \QC
automatically detects the device if you have configured it by using Xcode.
To view information about the connected device, select \uicontrol Preferences >
\uicontrol Devices.
\image qtcreator-ios-device-configurations.png "Devices dialog"
If the current device state is \uicontrol Connected, (the traffic light icon is
orange), you need to configure the device using Xcode.
\section1 Specifying Supported iOS Versions
Qt 5 applications can be built for the latest iOS version and deployed to
previous versions. For the most part, this works automatically. However,
you must take care when you manually set your own target version. If you set
it to a value higher than what Qt requires and supply your own \c Info.plist
file, you must add an \c LSMinimumSystemVersion entry to the \c Info.plist
that matches the value of \c QMAKE_IOS_DEPLOYMENT_TARGET (when using qmake)
or \c cpp.minimumIosVersion (when using Qbs), because iOS (and the
App Store) will use the \c LSMinimumSystemVersion value as the authoritative
one.
If you specify a deployment target value lower than what Qt requires, your
application will almost certainly crash somewhere in the Qt libraries when
run on an older version than Qt supports. Therefore, make sure that the
actual build system code reflects the minimum iOS version that is actually
required.
For more information, see \l{Expressing Supported iOS Versions}.
\section1 Testing on Simulator
If you do not have an iOS device or you do not want to create an account,
you can test applications on
\l{http://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/Introduction/Introduction.html}
{Simulator}, which is installed as part of Xcode. Each Xcode version
simulates a predefined set of hardware devices and software versions.
You can change the simulated hardware and software version in the run
settings for the project. Select \uicontrol Projects > \uicontrol Run, and then select
the device to simulate in the \uicontrol {Device type} field.
\image qtcreator-ios-simulator-deploy.png
The simulator is started automatically when you run the application.
To start the simulator manually, select \uicontrol Preferences >
\uicontrol Devices > \uicontrol iOS > \uicontrol Start.
To take screenshots of the simulator, select \uicontrol Preferences >
\uicontrol Devices > \uicontrol iOS > \uicontrol Screenshot. The screenshots
are stored in the directory specified in the
\uicontrol {Screenshot directory} field.
\section2 Managing Simulators
The available simulators are listed in \uicontrol Preferences >
\uicontrol Devices > \uicontrol iOS.
\image qtcreator-ios-preferences.png
To create a new simulator instance:
\list
\li Select \uicontrol Create.
\li In the \uicontrol {Device type} field, select the device type from
a list of devices supported by the Xcode version set as current on
the Mac computer.
\li In the \uicontrol {OS version} field, select an OS version from a
list of OS versions supported by the selected device and the current
Xcode version.
\endlist
To rename the selected simulator, select \uicontrol Rename.
To reset the contents and settings of the selected simulators, select
\uicontrol Reset.
To delete the selected simulator, select \uicontrol Delete.
\section2 Checking Current Xcode Version
To check the current Xcode version, enter the following command:
\c {xcode-select --print-path}
To change the version, enter the following command:
\c {xcode-select --version}
*/