license: Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing,
     software distributed under the License is distributed on an
     "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
     KIND, either express or implied.  See the License for the
     specific language governing permissions and limitations
     under the License.

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

В этом руководстве показано, как настроить среду разработки SDK для развертывания приложений Cordova для iOS-устройств, таких как iPhone и iPad. Смотрите ниже для более подробной информации конкретной платформы:

  • Конфигурация iOS
  • Обновление для iOS
  • WebViews в iOS
  • Плагины для iOS
  • Средства командной строки для iOS

Средства командной строки относятся к версии Cordova до 3.0. Смотрите раздел “Интерфейс командной строки” для информации о текущем интерфейсе интерфейс командной строки.

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

Инструменты Apple ®, необходимые для создания приложений iOS, выполняются только в операционной системе OS X на компьютерах Mac на базе Intel. Xcode ® 4.5 (минимальная требуемая версия) работает только на OS X 10.7 (Lion) версии или выше и включает в себя iOS 6 SDK (Software Development Kit). Чтобы отправить приложений в Apple App Store℠ требует последние версии инструментария Apple.

Вы можете проверить многие из функций Cordova, используя эмулятор iOS установленный с iOS SDK и Xcode, но вам нужно реальное устройство чтобы полностью проверить все функции приложения перед отправкой его в App Store. Устройство должно иметь по крайней мере iOS 5.x установлен, минимальный iOS версии поддерживается начиная с Cordova 2.3. Вспомогательные устройства включают все iPad ® модели, iPhone ® 3GS и выше и iPod ® Touch 3-го поколения или более поздней версии. Для установки приложений на устройство, необходимо также быть членом компании Apple iOS разработчик программы, которая стоит $99 в год. В этом руководстве показано, как развернуть приложения в эмуляторе iOS, для которого не нужно зарегистрироваться в программе developer.

Установите SDK

Существует два способа для загрузки Xcode:

  • из App Store, доступных путем поиска «Xcode» в приложении App Store .

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

После установки Xcode, несколько средств командной строки нужно быть включен для Cordova для запуска. Xcode меню выберите настройки, а затем вкладку загрузок . С панели « компоненты » нажмите кнопку установить рядом с Инструменты командной строки листинга.

Откройте проект в SDK

Использование cordova утилита для настройки нового проекта, как описано в Cordova интерфейс командной строки. Например в каталоге исходного кода:

    $ cordova create hello com.example.hello "HelloWorld"
    $ cd hello
    $ cordova platform add ios
    $ cordova prepare              # or "cordova build"

Как только создан, его можно открыть из в Xcode. Дважды щелкните, чтобы открыть hello/platforms/ios/hello.xcodeproj файл. Экран должен выглядеть следующим образом:

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

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

  1. Убедитесь, что на левой панели выбран файл .xcodeproj .

  2. Выберите приложение hello на панели справа.

  3. Выберите предполагаемый устройство из меню схема панели инструментов, таких как iPhone 6.0 симулятор как подчеркнул здесь:

  4. Нажмите кнопку Run , который появляется в панели же для левой части схемы. Это строит, развертывает и запускает приложение в эмуляторе. Отдельный эмулятор приложение открывает для отображения приложения:

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

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

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

Подробные сведения о различных требований для развертывания на устройстве можно найти в разделе Настройка развития и распределения активов Инструментов рабочего процесса руководства для iOSApple. Вкратце вам нужно выполнить следующие действия перед развертыванием:

  1. Присоединяйтесь к компании Apple iOS разработчик программы.

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

  3. Убедитесь, что раздел Подписи кода Удостоверения подписи кода в параметры проекта для провизионирования имя профиля.

Чтобы развернуть на устройстве:

  1. Используйте кабель USB, подключите устройство к ваш Mac.

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

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

  4. Нажмите на кнопку Run для построения, развертывания и запуска приложения на вашем устройстве.

Общие проблемы

Соответствующие предупреждения: когда приложение интерфейс программирования (API) изменить или заменить другим API, он помечен как устаревшие. API по-прежнему работает в ближайшем будущем, но в конечном итоге удаляется. Некоторые из этих устаревших интерфейсов отражены в Apache Cordova, и Xcode выдает предупреждения о них, когда вы построить и развернуть приложение.

Xcode предупреждение о invokeString метод касается функциональность, которая запускает приложение из пользовательского URL-адреса. В то время как механизм для загрузки из пользовательских URL-адрес изменился, этот код по-прежнему присутствует предоставлять обратную функциональность для приложений, созданных в старых выпусках Cordova. Образец приложения не использует эту функциональность, поэтому эти предупреждения можно игнорировать. Чтобы избежать отображения этих предупреждений, удалите код, ссылающийся на устаревшие invokeString API:

  • Отредактируйте файл Classes/MainViewController.m , окружают следующий блок кода с /* и */ комментарии, как показано ниже, затем введите Command-s , чтобы сохранить файл:

    (void)webViewDidFinishLoad:(UIWebView*)theWebView
    {
    // only valid if ___PROJECTNAME__-Info.plist specifies a protocol to handle
    /*
    if (self.invokeString) {
      // this is passed before the deviceready event is fired, so you can access it in js when you receive deviceready
      NSLog(@"DEPRECATED: window.invokeString - use the window.handleOpenURL(url) function instead, which is always called when the app is launched through a custom scheme url.");
      NSString* jsString = [NSString stringWithFormat:@"var invokeString = \"%@\";", self.invokeString];
      [theWebView stringByEvaluatingJavaScriptFromString:jsString];
    }
    */
    // Black base color for background matches the native apps
    theWebView.backgroundColor = [UIColor blackColor];
    
    return [super webViewDidFinishLoad:theWebView];
    }
    
  • Отредактируйте файл Classes/AppViewDelegate.m , закомментируйте следующую строку, вставляя двойной косой черты, как показано ниже, а затем введите Command-s , чтобы сохранить файл:

    //self.viewController.invokeString = invokeString;
    
  • Нажмите Command-b , перестройте проект и устранить эти предупреждения.

Отсутствуют заголовки: ошибки компиляции, связанные с недостающих заголовков в результате проблем с места построения и может быть установлена через Xcode предпочтения:

  1. Выберите Xcode → настройки → места.

  2. В разделе Данные нажмите кнопку Дополнительно и выберите уникальный как Расположение сборки , как показано здесь:

Это параметр по умолчанию для новой установки Xcode, но он может быть установлен по-другому после обновления с более старой версии Xcode.

Для получения дополнительной информации обратитесь к документации компании Apple:

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