Обновление для iOS
В этом руководстве показано, как изменить проекты iOS для обновления старых версий Кордова. Большинство из этих инструкций применяются для проектов, созданных с старого набора средств командной строки, которые предшествуют cordova
утилиты CLI. Увидеть интерфейс командной строки для получения информации как обновить версию инфраструктуры CLI.
Примечание: требуется Xcode 6. В настоящее время чтобы опубликовать приложение в Apple App Store, вы должны использовать последнюю версию iOS SDK, на данный момент iOS 8 которая включается только с Xcode 6.
Обновление проектов с 3.6.0 до 4.0.0
Для проектов-CLI выполните:
bin/обновить путь/к/проекта
Для проектов CLI:
Обновите версию
cordova
CLI. Смотрите "Интерфейс командной строки".Запустите
cordova platform update ios
в ваших проектах.
Обновление проектов с 3.3.0 до 3.4.0
Для проектов-CLI выполните:
bin/обновить путь/к/проекта
Для проектов CLI:
Обновите версию
cordova
CLI. Смотрите "Интерфейс командной строки".Запуск
cordova platform update ios
Обновление проектов с 3.2.0 до 3.3.0
Для проектов-CLI выполните:
bin/обновить путь/к/проекта
Для проектов CLI:
Обновите версию
cordova
CLI. Смотрите "Интерфейс командной строки".Запуск
cordova platform update ios
Обновление проектов с 3.1.0 до 3.2.0
Для проектов-CLI выполните:
bin/обновить путь/к/проекта
Для проектов CLI:
Обновите версию
cordova
CLI. Смотрите "Интерфейс командной строки".Запуск
cordova platform update ios
Обновление проектов с 3.0.0 до 3.1.0
Для проектов-CLI выполните:
bin/обновить путь/к/проекта
Для проектов CLI:
Обновите версию
cordova
CLI. Смотрите "Интерфейс командной строки".Запуск
cordova platform update ios
Проблемы iOS 7:
Удалите
width=device-width, height=device-height
из содержащегося в файлеindex.html
viewport
meta
тега. (См. соответствующую ошибку.)Обновите ваши media, media-capture и splashscreen плагины для поддержки iOS 7.
Проблемы Xcode 5:
Обновите параметры проекта, если Xcode 5 предлагает вам сделать это (в Issues Navigator).
Обновите настройки Compiler for C/C++/Objective-C, в вкладке Build Settings, раздел Build Options. Выберите Default compiler (Apple LLVM 5.0).
Обновление до CLI (3.0.0) с 2.9.0
Создайте новый проект Apache Cordova 3.0.0 используя Cordova CLI, как описано в разделе "Интерфейс командной строки".
Добавьте ваши платформы в проект Cordova, например:
cordova platform add ios
.Скопируйте содержимое каталога
www
исходного проекта в каталогwww
в корне проекта cordova, который вы только что создали.Скопируйте или перезапишите любые платформо-специфичные ресурсы из вашего оригинального проекта (
Resources
, и т.д.), убедитесь что любые новые файлы добавлены в.xcodeproj
проект. Проект iOS собирается в каталогеplatforms\ios
.Скопируйте файл
config.xml
в папкуwww
и удалите определения любых плагинов. Измените настройки здесь, а не в каталоге платформы.Используйте Сordova CLI для установки необходимых вам плагинов. Обратите внимание что CLI интерпретирует все базовые APIs как плагины, так что они тоже должны быть добавлены. Только плагины для версии 3.0.0 поддерживаются CLI.
Построение и тестирование.
Обновление проектов с 2.9.0 до 3.0.0
Загрузите и распакуйте исходный код Cordova 3.0.0 в постоянное место на вашем жестком диске, например в
~/Cordova-3.0.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Копия
www/cordova.js
(Обратите внимание, что он не имеет суффикса версии больше, версия в сам файл в заголовке) файл из нового проекта вwww
каталог и удалитьwww/cordova.js
файл.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova.js
.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.
Примечание: начиная с Cordova 3.0.0, плагины изначально не установлены плагины, и вам нужно использовать утилиту командной строки plugman
для их установки. Смотрите раздел "Использование Plugman для управления расширениями".
Обновление проектов 2.8.0 до 2.9.0
Загрузите и распакуйте исходный код Cordova 2.9.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.9.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Копия
www/cordova.js
(Обратите внимание, что он не имеет суффикса версии больше, версия в сам файл в заголовке) файл из нового проекта вwww
каталог и удалитьwww/cordova.js
файл.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova.js
.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.
Обновление проектов 2.7.0 до 2.8.0
Загрузите и распакуйте исходный код Cordova 2.8.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.8.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova.js
(Обратите внимание, что он больше не имеет суффикса версии, версия в самом заголовке файла) из нового проекта в папкуwww
и удалить файлwww/cordova-2.7.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova.js
.Обновите любые теги
<plugin>
в файлеconfig.xml
на теги<feature>
. Обратите внимание, что существующие теги<plugin>
по-прежнему будут работать, но являются устаревшими. Вы можете скопировать эту информацию в файлconfig.xml
для нового проекта. Например:<plugins> <plugin name="LocalStorage" value="CDVLocalStorage" /> <!-- other plugins --> </plugins> <!-- change to: (note that a <feature> tag is on the same level as <plugins> --> <feature name="LocalStorage"> <param name="ios-package" value="CDVLocalStorage" /> </feature> <!-- other <feature> tags -->
Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.Добавьте эти два фреймворка в проект:
OpenAL ImageIO
Обновите для цели построения вашего проекта Build Settings. В разделе Linking → Other Linker Flags, измените "-Obj-C" на "-ObjC".
Обновите для цели построения вашего проекта Build Settings. В разделе Linking → Other Linker Flags, измените "-all_load" на
-force\_load ${BUILT\_PRODUCTS\_DIR}/libCordova.a
. Вам только нужно будет это сделать, если у вас есть проблемы, определенные в этом запросе..
Обновление проектов 2.6.0 до 2.7.0
Загрузите и распакуйте исходный код Cordova 2.7.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.7.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.7.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.6.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
AppDelegate.m
в соотвествии такому же файлу из нового проекта (см. этот diff).В файле
config.xml
, удалите эту строку.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.
Обновление проектов 2.5.0 до 2.6.0
Загрузите и распакуйте исходный код Cordova 2.6.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.6.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.6.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.5.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.6.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
AppDelegate.m
в соотвествии такому же файлу из нового проекта (см. этот diff).В файле
config.xml
, добавьте эту новую строку.В файле
config.xml
, добавьте эту новую строку.В файле
config.xml
, UIWebViewBounce был изменен на DisallowOverscroll, и значения по умолчанию отличаются.В файле
config.xml
параметрEnableLocation
является устаревшим.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.
Обновление проектов 2.4.0 до 2.5.0
Загрузите и распакуйте исходный код Cordova 2.5.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.5.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.5.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.4.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.5.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
AppDelegate.m
в соотвествии такому же файлу из нового проекта (см. этот diff).В файле
config.xml
, добавьте эту строки.В файле
config.xml
, измените корневой элемент, изменить его с cordova на widget.В файле
config.xml
, удалите параметры OpenAllWhitelistURLsInWebView.Удалить каталог
cordova
и скопируйте каталогcordova
из нового проекта в корневой каталог вашего проекта. В 2.5.0 это обновит скрипты.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.
Обновление проектов 2.3.0 до 2.4.0
Загрузите и распакуйте исходный код Cordova 2.4.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.4.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.4.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.3.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.4.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
MainViewController.m
в соотвествии такому же файлу из нового проекта (см. этот diff).Обновите (или замените, если вы никогда не изменяли файл) файл
AppDelegate.m
в соотвествии такому же файлу из нового проекта (см. этот diff).В файле
config.xml
, добавьте эту новую строку.Удалить каталог
cordova
и скопируйте каталогcordova
из нового проекта в корневой каталог вашего проекта. В 2.4.0 это обновит скрипты.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.Добавьте AssetsLibrary.framework как ресурс в ваш проект. (См. документацию Apple для получения инструкций о том, как это сделать.).
Обновление проектов 2.2.0 до 2.3.0
Загрузите и распакуйте исходный код Cordova 2.3.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.3.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.3.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.2.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.3.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
MainViewController.m
в соотвествии такому же файлу из нового проекта.Удалить каталог
cordova
и скопируйте каталогcordova
из нового проекта в корневой каталог вашего проекта. В 2.3.0 это обновит скрипты.Удалить
CordovaLib
каталог и копиюCordovaLib
каталог из нового проекта в корневой директории вашего проекта.Преобразуйте файл
Cordova.plist
в файлconfig.xml
, запустив сценарийbin/cordova\_plist\_to\_config\_xml
на вашем файле проекта.Добавьте плагин InAppBrowser в
config.xml
, путем добавления этого тега вcordova>< plugins><
:<plugin name="InAppBrowser" value="CDVInAppBrowser" />
Обратите внимание, что плагины Objective-C, более не whitelisted. Чтобы разрешить ваши соединения с помощью списка разрешенных ресурсов приложение, вам нужно задать заголовок
User-Agent
для соединения таким же как пользовательский агент у основного Cordova WebView. Вы можете получить это, обратившись к свойствоuserAgent
основного контроллера представления. Основной контроллер представления (CDVViewController
) также имеет методURLisAllowed
который позволяет вам проверить, прошел ли URL-адрес ограничения списка разрешенных ресурсов.Изменения API устройства:
* Для iOS, device.platform использовалась для возвращения `iPhone`, `iPad` или `iPod Touch`; Теперь она возвращает (правильно) `iOS`.
* Для iOS, device.name (являющееся устаревшим для всех платформ) используется для возвращения имени устройства пользователя (например, ‘Shazron’s iPhone 5′); сейчас это свойство возвращает тоже что должен возвращать device.platform: `iPhone`, `iPad` или `iPod Touch`.
* Для всех платформ, существует новое свойство под названием device.model; оно возвращает определенную модель устройства , например `iPad2,5` (для других платформ, это свойство возвращает то что должно возвращать свойство device.name).
Обновление проектов 2.1.0 до 2.2.0
Загрузите и распакуйте исходный код Cordova 2.2.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.2.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.2.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.1.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.2.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
MainViewController.m
в соотвествии такому же файлу из нового проекта:
* Updated → viewWillAppear
Скопируйте каталог
cordova
из нового проекта в корневую папку вашего проекта. В 2.2.0 она имеет обновленный сценарий 'emulate'.Далее обновите ссылку проекта
CordovaLib
. Начиная с Cordova 2.1.0, мы не используем больше переменную Xcode CORDOVALIB для указания где находитсяCordovaLib
, ссылка теперь является абсолютной ссылкой.- Запустите Terminal.app
- Перейдите к папке, где установлена Cordova (см. шаг 1), в подкаталог
bin
Запустите сценарий указанный ниже, где первым параметром является путь к файлу проекта
.xcodeproj
:update_cordova_subproject path/to/your/project/xcodeproj
Примечание: В 2.2.0, сценарий bin/create
копирует в подпапку CordovaLib
проекта. Чтобы иметь тот же тип установки, просто скопируйте корректный CordovaLib
в каталог проекта и обновить местоположение проекта CordovaLib
(относительно проекта) в инспекторе файлов Xcode.
Обновление проектов 2.0.0 до 2.1.0
С Cordova 2.1.0 проект CordovaLib
был обновлен для использования Автоматического подсчета ссылок (ARC). Вам не нужно обновление до ARC для использования CordovaLib, но если вы хотите обновить проект для использования ARC, пожалуйста используйте мастер миграции Xcode из меню: Edit → Refactor → Convert to Objective-C ARC..., снимите флажок libCordova.a, а затем запустите мастер для завершения.
Загрузите и распакуйте исходный код Cordova 2.1.0 в постоянное место на вашем жестком диске, например в
~/Cordova-2.1.0
.Если оно выполняется, закройте Xcode.
С помощью Terminal.app, перейдите в каталог, где вы положили загруженных исходных выше.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.1.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-2.0.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.1.0.js
.Обновите (или замените, если вы никогда не изменяли файл) файл
AppDelegate.m
в соотвествии такому же файлу из нового проекта:
* Edited → application:didFinishLaunchingWithOptions:
* Added → application:supportedInterfaceOrientationsForWindow:
- Обновите (или замените, если вы никогда не изменяли файл) файл
MainViewController.m
в соотвествии такому же файлу из нового проекта:
* Added → viewWillAppear
Скопируйте каталог
cordova
из нового проекта в корневой директории вашего проекта. В 2.1.0 этот каталог содержит обновленные скрипты для поддержки пути с пробелами.Удалите ссылки на файл
VERSION
файл из проекта (не тот который расположен вCordovaLib
).Далее обновите ссылку проекта
CordovaLib
. Начиная с Cordova 2.1.0, мы не используем больше переменную Xcode CORDOVALIB для указания где находитсяCordovaLib
, ссылка теперь является абсолютной ссылкой.- Запустите Terminal.app
- Перейдите к папке, где установлена Cordova (см. шаг 1), в подкаталог
bin
Запустите сценарий указанный ниже, где первым параметром является путь к файлу проекта
.xcodeproj
:update_cordova_subproject path/to/your/project/xcodeproj
Обновление проектов с 1.9.0 до 2.0.0
Установите Cordova 2.0.0.
Создайте новый проект, как описано в разделе "Руководство инструментов iOS". Вам нужны будут ресурсы из нового проекта.
Скопируйте файл
www/cordova-2.0.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-1.9.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-2.0.0.js
.Скопируйте каталог
cordova
из нового проекта в корневой каталог вашего проекта (если вы хотите средства командной строки для проекта).Добавьте новую запись в разделе
Plugins
в файлеCordova.plist
, в группе Supporting Files . КлючDevice
и значениеCDVDevice
.Удалите
Cordova.framework
.Удалите
verify.sh
из группы Supporting Files .Выберите значок проекта в Project Navigator, выберите Target для проекта, а затем выберите вкладку Build Settings .
Найдите Preprocessor Macros, затем удалите все значения CORDOVA_FRAMEWORK=1.
Найдите каталог
CordovaLib
, который был установлен на ваш жесткий диск, в поддиректорииDocuments
в вашей домашней папке.Найдите файл
CordovaLib.xcodeproj
в папкеCordovaLib
, а затем перетащите этот файл в ваш проект. Он должен отображаться как подпроект.Постройте ваш проект, вы должны получить некоторые ошибки, связанные с директивой
#import
.Для ошибок
#import
измените любой импорт в двойных кавычках в следующем стиле:#import "CDV.h"
в стиль, основанный на скобках:
#import <Cordova/CDV.h>
и удалите любые
#ifdef
обертки вокруг любого импорта Cordova, они больше не нужны (импорты теперь унифицированы)Снова соберите свой проект, и он более не должен иметь каких-либо ошибок
#import
.Выберите значок проекта в Project Navigator, выберите Target проекта, а затем выберите вкладку Build Phases .
Разверните фазу Target Dependencies, а затем выберите + кнопку.
Выберите цель
CordovaLib
, а затем выберите кнопку Add .Разверните первый этап Link Binary with Libraries (он уже должен содержать кучу фреймворков), а затем выберите кнопку +.
Выберите статическую библиотеку
libCordova.a
, а затем выберите кнопку Add .Удалите фазу Run Script .
Выберите значок проекта в Project Navigator, выберите Target проекта, а затем выберите вкладку Build Phases.
Найдите Other Linker Flags и добавьте значения -force_load -Obj-С.
Разверните
CordovaLib
под-проект.Найдите файл
VERSION
, перетащите ее в ваш основной проект (мы хотим создать ссылку на него, не копию).Выберите переключатель Create groups for any added folders, а затем выберите кнопку Finish.
Выберите файл
VERSION
, который вы только что перетащили на предыдущем шаге.Нажмите сочетание клавиш Option-Command-1, чтобы показать File Inspector (или пункт меню View → Utilities → Show File Inspector).
Выбрать Relative to CORDOVALIB в File Inspector для раскрывающегося меню для Location.
Xcode предпочтения Xcode Preferences → Locations → Derived Data → Advanced... можно присвоить Unique, так что унифицированные заголовки можно будет найти.
Выберите значок проекта в Project Navigator, выберите Target проекта, а затем выберите вкладку Build Phases.
Найдите Header Search Paths. Для этого параметра, добавьте эти три значения, включая кавычки:
"$(TARGET_BUILD_DIR)/usr/local/lib/include" "$(OBJROOT)/UninstalledProducts/include" "$(BUILT_PRODUCTS_DIR)"
Найдите Other Linker Flags. Для этого параметра, добавьте это значение:
-weak_framework CoreFoundation
Постройте свой проект, это должно скомпилировать и связать без вопросов.
Выберите проект в раскрывающемся списке Scheme , а затем выберите iPhone 5.1 Simulator.
Выберите кнопку Run .
Примечание: Если ваш проект не работает как ожидалось в симуляторе, пожалуйста обратите внимание на любые ошибки в журнале консоли Xcode для подсказки.
Обновление проектов 1.8.x до 1.9.0
Установите Cordova 1.9.0.
Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте файл
www/cordova-1.9.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-1.8.x.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-1.9.0.js
.
Примечание: 1.9.0 поддерживает новый boolean параметр Cordova.plist
BackupWebStorage
. Он включен по умолчанию, поэтому установите его в значение false,
чтобы отключить его, особенно на iOS 6. Смотреть Release Notes: Safari and UIKit Section
Обновление проектов 1.7.0 до 1.8.x
Установите Cordova 1.8.0.
Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте файл
www/cordova-1.8.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-1.7.x.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-1.8.0.js
.
Если вы собираетесь использовать Capture API, вам понадобится новые ресурсы для iPad с retina дисплеем:
Скопируйте элемент
Resources/Capture.bundle
из нового проекта в каталог проекта, перезапишите ваш существующий элементResources/Capture.bundle
.В вашем проекте выберите пункт
Capture.bundle
в навигаторе проекта в Xcode, нажмите клавишу Delete, а затем выберите Remove Reference в появившемся диалоговом окне.Перетащите новый
Capture.bundle
из шага 1 выше, в навигаторе проекта в Xcode, а затем выберите переключатель Create groups for any added folders .
Обновление проектов 1.6.x до 1.7.0
Установите Cordova 1.7.0.
Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте файл
www/cordova-1.7.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-1.6.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-1.7.0.js
.
Обновление проектов 1.5.0 до 1.6.x
Установите Cordova 1.6.1.
Сделайте резервную копию файлов
AppDelegate.m
,AppDelegate.h
,MainViewController.m
,MainViewController.h
иCordova.plist
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 1.5.0 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m Cordova.plist
Добавьте в свой проект Xcode все новые файлы
MainViewController
иAppDelegate
.Скопируйте файл
www/cordova-1.6.0.js
из нового проекта в папкеwww
и удалите файлwww/cordova-1.5.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-1.6.1.js
.Добавьте в проект новый файл
Cordova.plist
. Это необходимо потому, что имена основных служб плагинов должны измениться, чтобы соответствовать тем же службам в Android и BlackBerry, для единого файла Cordova JavaScript (cordova-js
).Интегрируйте любые настройки, записи Plugins и ExternalHosts, которые вы имели в вашем резервном Cordova.plist в новый
Cordova.plist
.Интегрируйте любой код уникальный для конкретного проекта, который вы сохранили в резервной копии
AppDelegate.h
иAppDelegate.m
в новые файлыAppDelegate
. Любой кодUIWebViewDelegate
илиCDVCommandDelegate
вAppDelegate.m
должен уйти вMainViewController.m
(см. закомментированные разделы в этом файле).Интегрируйте любой код уникальный для конкретного проекта, который вы сохранили в резервной копии
MainViewController.h
иMainViewController.m
в новые файлы MainViewController.Нажмите на значок проекта в диспетчере структуры проекта, выберите Project, а затем выберите вкладку Build Settings .
Введите Compiler for C/C++/Objective-C в поле поиска.
Выберите значение Apple LLVM Compiler 3.1 .
Обновление проектов 1.4.x до 1.5.0
Установите Cordova 1.5.0.
Создайте новый проект и запустите его один раз. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте файл
www/cordova-1.5.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-1.4.x.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаcordova-1.5.0.js
.Найти
PhoneGap.framework
в вашем навигаторе проекта, выберите его.Нажмите кнопку Delete и удалить ссылку на
PhoneGap.framework
в диспетчере структуры проекта.Введите сочетание клавиш Option-Command-A, это должно открыть выпадающий список для добавления файлов в проект (лист Add Files... ). Убедитесь, что выбран переключатель Created groups for any added folders .
Введите сочетание клавиш Command-Shift-G , которая должна открыть другой выпадающий список для вас, чтобы перейти к папке (Go to the folder: лист).
Введите
/Users/Shared/Cordova/Frameworks/Cordova.framework
в Go to the folder: лист, а затем нажмите кнопку Go .Нажмите на кнопку Add в окне Add Files... .
Выберите
Cordova.framework
в диспетчере структуры проекта.Введите сочетание клавиш Option-Command-1 , чтобы открыть File Inspector.
Выберите Absolute Path в File Inspector для раскрывающегося меню в Location.
Введите сочетание клавиш Option-Command-A, это должно открыть выпадающий список для добавления файлов в проект (лист Add Files... ). Убедитесь, что выбран переключатель Created groups for any added folders .
Введите сочетание клавиш Command-Shift-G , которая должна открыть другой выпадающий список для вас, чтобы перейти к папке (Go to the folder: лист).
Введите
~/Documents/CordovaLib/Classes/deprecated
в окне Go to the folder:, а затем нажмите кнопку Go .Нажмите на кнопку Add в окне Add Files....
В файлах
AppDelegate.h
,AppDelegate.m
иMainViewController.h
замените весь блок#ifdef PHONEGAP_FRAMEWORK
на:#import "CDVDeprecated.h"
Выберите значок проекта в Project Navigator, выберите Target проекта, а затем выберите вкладку Build Phases.
Найдите Framework Search Paths.
Замените существующее значение на
/Users/Shared/Cordova/Frameworks
.Найдите Preprocessor Macros.
Для первого (комбинированного) значения, замените значение на CORDOVA_FRAMEWORK=YES.
Выберите вкладку Build Phases .
Разверните узел Run Script.
Замените все вхождения PhoneGap на Cordova.
Найдите файл
PhoneGap.plist
в диспетчере структуры проекта и щелкните на имени файла, для того, чтобы войти в режим редактирования имени.Переименуйте
PhoneGap.plist
вCordova.plist
.Щелкните правой кнопкой мыши
Cordova.plist
и выберите Open As → Source Code.Нажмите Option-Command-F, выберите Replace из раскрывающегося списка в верхней левой части окна исходного кода.
Введите
com.phonegap
для строки поиска иorg.apache.cordova
для строки замены, а затем нажмите кнопку Replace All .Введите PG для строки поиска и CDV для строки замены, а затем нажмите кнопку Replace All .
Нажмите Command-B, для построения. У вас до сих пор остались устаревшие коды от которых вы можете избавиться в будущем (см.
CDVDeprecated.h
. К примеру, заменить классы в коде, использующие PG* на CDV*).
Обновление проектов 1.4.0 до 1.4.1
Установите Cordova 1.4.1.
Сделайте резервную копию
MainViewController.m
.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте файл
MainViewController.m
из нового проекта в каталог проекта 1.4.0на диске, заменив старый файл (сперва сделайте резервное копирования ваших файлов из шага 2 указанного выше).Добавьте файл
MainViewController.m
в ваш проект Xcode.Интегрируйте любой код уникальный для конкретного проекта, который вы сохранили в резервной копии
MainViewController.m
в новый файл.Обновление файла
phonegap-1.4.0.js
является необязательным, в JavaScript между 1.4.0 и 1.4.1 ничего не изменилось.
Обновление проектов с 1.3.0 до 1.4.0
Установите Cordova 1.4.0.
Сделайте резервную копию
AppDelegate.m
иAppDelegate.h
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 1.3.0 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m MainViewController.xib
Добавьте файл
MainViewController.m
в ваш проект Xcode.Скопируйте файл
www/phonegap-1.4.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-1.3.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаphonegap-1.4.0.js
.Добавьте новую запись под
Plugins
вPhoneGap.plist
файл. Ключcom.phonegap.battery
и значениеPGBattery
.Интегрировать любой код конкретного проекта, у вас есть в вашей резервной копии
AppDelegate.h
иAppDelegate.m
в новой AppDelegate файлы.
Обновление проектов с 1.2.0 до 1.3.0
Установите Cordova 1.3.0.
Сделайте резервную копию
AppDelegate.m
иAppDelegate.h
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 1.2.0 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m MainViewController.xib
Добавьте файл
MainViewController.m
в ваш проект Xcode.Скопируйте файл
www/phonegap-1.3.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-1.2.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаphonegap-1.3.0.js
.Добавьте новую запись под
Plugins
вPhoneGap.plist
файл. Ключcom.phonegap.battery
и значениеPGBattery
.Интегрировать любой код конкретного проекта, у вас есть в вашей резервной копии
AppDelegate.h
иAppDelegate.m
в новой AppDelegate файлы.
Обновление проектов с 1.1.0 до 1.2.0
Установите Cordova 1.2.0.
Сделайте резервную копию
AppDelegate.m
иAppDelegate.h
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 1.1.0 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m MainViewController.xib
Добавьте файл
MainViewController.m
в ваш проект Xcode.Скопируйте файл
www/phonegap-1.2.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-1.1.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаphonegap-1.2.0.js
.Добавьте новую запись под
Plugins
вPhoneGap.plist
файл. Ключcom.phonegap.battery
и значениеPGBattery
.Интегрировать любой код конкретного проекта, у вас есть в вашей резервной копии
AppDelegate.h
иAppDelegate.m
в новой AppDelegate файлы.
Обновление проектов с 1.0.0 до 1.1.0
Установите Cordova 1.1.0.
Сделайте резервную копию
AppDelegate.m
иAppDelegate.h
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 1.0.0 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m MainViewController.xib
Добавьте файл
MainViewController.m
в ваш проект Xcode.Скопируйте файл
www/phonegap-1.1.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-1.0.0.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаphonegap-1.1.0.js
.Добавьте новую запись под
Plugins
вPhoneGap.plist
файл. Ключcom.phonegap.battery
и значениеPGBattery
.Интегрировать любой код конкретного проекта, у вас есть в вашей резервной копии
AppDelegate.h
иAppDelegate.m
в новой AppDelegate файлы.
Обновление проектов с 0.9.6 до 1.0.0
Установите Cordova 1.0.0.
Сделайте резервную копию
AppDelegate.m
иAppDelegate.h
в вашем проекте.Создайте новый проект. Вам понадобится некоторые из активов от этого нового проекта.
Скопируйте эти файлы из нового проекта в папке проекта 0.9.6 на диске, заменив старые файлы (сперва сделайте резервное копирование файлов из шага 2 указанного выше):
AppDelegate.h AppDelegate.m MainViewController.h MainViewController.m MainViewController.xib
Добавьте файл
MainViewController.m
в ваш проект Xcode.Скопируйте файл
www/phonegap-1.0.0.js
из нового проекта в папкеwww
и удалите файлwww/phonegap-0.9.6.js
.Обновите ссылку на скрипт Cordova в
www/index.html
(и любом другом файле который содержит элемент script) чтобы он указывал на новую версию файлаphonegap-1.0.0.js
.Добавьте новую запись под
Plugins
вPhoneGap.plist
файл. Ключcom.phonegap.battery
и значениеPGBattery
.Интегрировать любой код конкретного проекта, у вас есть в вашей резервной копии
AppDelegate.h
иAppDelegate.m
в новой AppDelegate файлы.