Spec-Zone.ru › Cordova 9

Руководство по платформе iOS

Это руководство показывает, как настроить среду разработки SDK для развертывания приложений Cordova на устройствах iOS, таких как iPhone и iPad, а также как дополнительно использовать инструменты командной строки, ориентированные на iOS, в процессе разработки. Вам необходимо установить инструменты SDK независимо от того, хотите ли вы использовать эти инструменты командной строки, ориентированные на платформу, или кроссплатформенную командную строку Cordova для разработки. Для сравнения двух путей разработки см. Обзор. Подробности о командной строке см. в Справочнике по Cordova CLI.

Требования и поддержка

Инструменты Apple®, необходимые для создания приложений iOS, работают только на операционной системе OS X на компьютерах Mac с процессорами Intel. Xcode® 8.0 (минимальная требуемая версия) работает только на OS X версии 10.11.5 (El Capitan) или выше и включает iOS 10 SDK (комплект разработки программного обеспечения). Для отправки приложений в Apple App Store℠ требуется использование последних версий инструментов Apple.

Вы можете протестировать многие функции Cordova с помощью эмулятора iOS, установленного вместе с iOS SDK и Xcode, но для полного тестирования всех функций устройства приложения перед отправкой в App Store необходимо использовать реальное устройство. Устройство должно иметь как минимум iOS 9, минимальную версию iOS, поддерживаемую с момента выпуска cordova-ios v4.4.0.

Установка требований

Xcode

Есть два способа скачать Xcode:

  • из App Store, доступного путем поиска "Xcode" в приложении App Store.

  • с Apple Developer Downloads, что требует регистрации в качестве разработчика Apple.

После установки Xcode необходимо включить несколько инструментов командной строки для работы Cordova. Из командной строки выполните:

$ xcode-select --install

Инструменты развертывания

Инструменты ios-deploy позволяют запускать приложения iOS на устройстве iOS из командной строки.

Для его установки выполните следующую команду в терминале командной строки:

$ npm install -g ios-deploy

Настройка проекта

Установка Xcode в основном настроит все необходимое для начала работы с нативной частью. Теперь вы должны иметь возможность создавать и компилировать проект cordova. Для получения более подробной информации об установке и использовании командной строки, см. руководство Создайте свое первое приложение.

Развертывание в эмуляторе

Для предварительного просмотра приложения в эмуляторе iOS:

  1. Откройте файл рабочей области (platforms/ios/HelloWorld.xcworkspace) из Xcode, или из командной строки:

    $ open ./platforms/ios/HelloWorld.xcworkspace/
    
  2. Убедитесь, что проект HelloWorld выбран в левой панели (1).

  1. Выберите целевое устройство в меню Схема панели инструментов, например, эмулятор iPhone XR, как показано на рисунке (2).

  2. Нажмите кнопку Запуск (3) в той же панели инструментов слева от Схема. Это скомпилирует, развернёт и запустит приложение в эмуляторе. Откроется отдельное приложение эмулятора для отображения приложения:

Одновременно может работать только один эмулятор, поэтому если вы хотите протестировать приложение в другом эмуляторе, вам нужно закрыть приложение эмулятора и запустить другой целевой объект в Xcode.

Xcode поставляется с эмуляторами для последних версий iPhone и iPad. Более старые версии могут быть доступны в панели Xcode → Настройки... → Компоненты.

Развертывание на устройстве

Подробные сведения о различных требованиях для развертывания на устройстве см. в разделе «Запуск приложения на устройствах» руководства Apple Об общих принципах распространения приложений. Вкратце, перед развертыванием необходимо выполнить следующие действия:

  1. Создайте профиль подготовки в портале подготовки iOS. Вы можете использовать помощник подготовки для разработки, чтобы создать и установить профиль и сертификат, необходимые Xcode.

  2. Убедитесь, что в настройках кодирования в разделе «Подпись кода» значение «Идентификатор подписи кода» установлено на имя вашего профиля подготовки.

Для развертывания на устройстве:

  1. Подключите устройство к вашему Mac с помощью кабеля USB.

  2. Выберите имя проекта в раскрывающемся списке Схема окна Xcode.

  3. Выберите ваше устройство в раскрывающемся списке Устройство. Если оно подключено по USB, но все еще не отображается, нажмите кнопку Организатор, чтобы устранить ошибки.

  4. Нажмите кнопку Запуск, чтобы скомпилировать, развернуть и запустить приложение на вашем устройстве.

Подписание приложения

Сначала ознакомьтесь со страницей поддержки подписи кода и руководством по процессам распространения приложений.

Использование флагов

Для подписи приложения необходимы следующие параметры:

Параметр Флаг Описание
Идентификатор подписи кода --codeSignIdentity Идентификатор подписи кода, используемый для подписи. Он может быть создан с помощью Xcode и добавлен в ваш ключ. Начиная с Xcode 8, следует использовать --codeSignIdentity="iPhone Developer" как для debug, так и для release.
Команда разработки --developmentTeam Команда разработки (Идентификатор команды), используемая для подписи кода. Вы можете использовать это значение и упрощенный идентификатор подписи кода (например, просто «Разработчик iPhone»), чтобы подписать свои приложения, вам не нужно предоставлять профиль подготовки.
Тип упаковки --packageType Это определит, какой тип сборки будет сгенерирован Xcode. Допустимые варианты: development (по умолчанию), enterprise, ad-hoc, и app-store.
Профиль подготовки --provisioningProfile (Необязательно) GUID профиля подготовки, который будет использоваться для ручной подписи. Он копируется на ваш Mac: ~/Library/MobileDevice/Provisioning\ Profiles/. Откройте его в текстовом редакторе, чтобы найти GUID, который необходимо указать, если используется ручная подпись.
Правила подписи ресурсов кода --codesignResourceRules (Необязательно) Используется для управления файлами в пакете, которые должны быть защищены подписью кода. Для получения дополнительной информации см. статью OS X Code Signing In Depth
Автоматическая подготовка --automaticProvisioning (Необязательно) Включите, чтобы разрешить Xcode автоматически управлять профилями подготовки. Допустимые варианты: false (по умолчанию) и true.

Использование build.json

В качестве альтернативы вы можете указать их в файле конфигурации сборки (build.json) с помощью параметра --buildConfig для тех же команд. Вот пример файла конфигурации сборки:

Для автоматической подписи, где профили подготовки управляются автоматически Xcode (рекомендуется):

{
    "ios": {
        "debug": {
            "codeSignIdentity": "iPhone Developer",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "development",
            "automaticProvisioning": true,
            "buildFlag": [
                "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
                "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
                "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
            ]
        },
        "release": {
            "codeSignIdentity": "iPhone Developer",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "app-store",
            "automaticProvisioning": true,
            "buildFlag": [
                "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
                "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
                "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
            ]
        }
    }
}

Для ручной подписи, указания профилей подготовки по UUID:

{
    "ios": {
        "debug": {
            "codeSignIdentity": "iPhone Development",
            "provisioningProfile": "926c2bd6-8de9-4c2f-8407-1016d2d12954",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "development"
        },
        "release": {
            "codeSignIdentity": "iPhone Distribution",
            "provisioningProfile": "70f699ad-faf1-4adE-8fea-9d84738fb306",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "app-store"
        }
    }
}

Флаги сборки Xcode

Если у вас есть особая ситуация, когда вам необходимо передать дополнительные флаги сборки в Xcode, вы можете использовать один или несколько --buildFlag параметров для передачи этих флагов в xcodebuild. Если вы используете встроенный флаг xcodebuild, появится предупреждение.

cordova build --device --buildFlag="MYSETTING=myvalue" --buildFlag="MY_OTHER_SETTING=othervalue"
cordova run --device --buildFlag="DEVELOPMENT_TEAM=FG35JLLMXX4A" --buildFlag="-scheme TestSchemeFlag"

Вы также можете указать параметр buildFlag в build.json выше (значение ключа buildFlag — строка или массив строк).

Отладка

Для получения подробной информации об инструментах отладки, которые поставляются с Xcode, см. эту статью и это видео.

Открытие проекта в Xcode

Проекты Cordova для iOS можно открыть в Xcode. Это может быть полезно, если вы хотите использовать встроенные инструменты отладки/профилирования Xcode или если вы разрабатываете плагины iOS. Обратите внимание, что при открытии проекта в Xcode рекомендуется НЕ редактировать код в IDE. Это изменит код в папке platforms вашего проекта (а не в www). Изменения могут быть перезаписаны. Вместо этого редактируйте папку www и скопируйте изменения, выполнив cordova build.

Разработчики плагинов, желающие редактировать свой нативный код в IDE, должны использовать флаг --link при добавлении своего плагина в проект с помощью cordova plugin add. Это свяжет файлы таким образом, что изменения в файлах плагина в папке platforms будут отражаться в вашей папке исходного кода плагина (и наоборот).

После добавления платформы iOS в ваш проект и компиляции с помощью cordova build, вы можете открыть его в Xcode. Дважды щелкните, чтобы открыть файл ${PROJECT_NAME}/platforms/ios/${PROJECT_NAME}.xcworkspace или откройте Xcode из терминала:

$ open -a Xcode platforms/ios

Экран должен выглядеть так:

Процесс разработки, ориентированный на платформу

cordova-ios включает ряд скриптов, которые позволяют использовать платформу без полной командной строки Cordova. Этот путь разработки может предоставить вам больше возможностей разработки в определенных ситуациях, чем кроссплатформенная командная строка cordova CLI. Например, вам нужно использовать инструменты командной строки при развертывании пользовательского Cordova WebView наряду с нативными компонентами. Прежде чем использовать этот путь разработки, вам по-прежнему необходимо настроить среду SDK, как описано в разделе Требования и поддержка выше.

Для каждого из описанных ниже скриптов см. Справочник по Cordova CLI для получения дополнительной информации об их аргументах и использовании. Каждый скрипт имеет имя, соответствующее команде CLI. Например, cordova-ios/bin/create эквивалентно cordova create.

Чтобы начать работу, скачайте пакет cordova-ios с npm или Github.

Чтобы создать проект с помощью этого пакета, выполните скрипт create в папке bin:

$ cordova-ios/bin/create ...

Чтобы запустить приложение, используйте скрипт run в папке bin:

$ cordova-ios/bin/run

Создаваемый проект будет содержать папку с именем cordova, которая содержит скрипты для команд Cordova, специфичных для проекта (например, run, build, и т. д.).

Для установки плагинов в этом проекте используйте утилиту Cordova Plugman.

Обновление

Обратитесь к статье этой для получения инструкций по обновлению вашей версии cordova-ios.

(Mac®, OS X®, Apple®, Xcode®, App Store℠, iPad®, iPhone®, iPod® и Finder® являются торговыми марками Apple Inc.)

© 2012, 2013, 2015 The Apache Software Foundation
Licensed under the Apache License 2.0.
https://cordova.apache.org/docs/en/9.x/guide/platforms/ios/index.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API