Вы должны всегда обновлять Cordova до последней версии. Когда будет доступна новая версия Cordova, вы получите сообщение об обновлении в своем терминале, когда будете его использовать. Если вы этого не сделаете, вы все равно можете проверить устаревшие пакеты глобально, используя следующую команду:
npm outdated -g --depth=0
Это должно сгенерировать следующий вывод (в зависимости от глобально установленных пакетов он может измениться):
Как видите, пакет cordova устарел, поэтому рекомендуется обновить его. В этой статье вы узнаете все, что вам нужно об обновлении инструментов CLI Cordova и платформ Cordova проекта.
Почему я должен проверять и обновлять Cordova и Cordova платформы
Есть много причин (некоторые из них очень очевидны) того, почему вы всегда должны быть в курсе своего кода. Наиболее важным является обеспечение возможности сопровождения вашего проекта, поскольку с течением времени в платформе Cordova обнаруживаются недостатки безопасности, которые произошли пару лет назад, когда Google Play предупредил всех разработчиков с опубликованным приложением Cordova, платформа Android которого была устарела, показывая следующее предупреждение в консоли Google Play:
Это уведомление о том, что ваш файл —mycompany.packages.id— построен на версии Apache Cordova, в которой содержатся уязвимости безопасности. Это включает в себя уязвимость XAS-сценариев с высокой степенью серьезности. При определенных обстоятельствах уязвимые приложения могут удаленно использоваться для кражи конфиденциальной информации, такой как учетные данные пользователя.
Вы должны обновить до Apache Cordova 3.5.1 или выше как можно скорее. Для получения дополнительной информации об уязвимостях и руководства по обновлению Apache Cordova см. Http://cordova.apache.org/announcements/2014/08/04/android-351.html.
Обратите внимание, что приложения с уязвимостями, которые подвергают пользователей риску компрометации, могут считаться «опасными продуктами» и могут быть удалены из Google Play.
Что ж, риск для безопасности вашего пользователя уже является причиной того, что вам всегда следует обновлять приложение Cordova до последней версии.
Кроме того, речь идет не только об обновлении платформы вашего приложения Cordova, но и об инструментах, которые вы используете для создания приложений Cordova (поскольку «Предупреждение системы безопасности» относится к версии Cordova, используемой в приложении, а не к версии Cordova установлена в вашей системе, которая может отличаться). Убедитесь, что вы всегда работаете с последней версией Cordova в своей среде разработки, поэтому у вас будут новейшие игрушки и функции, которые сделают ваш опыт разработки намного лучше.
1. Проверка Кордовы
Вы можете проверить установленную версию Cordova в Node.js, выполнив следующую команду:
cordova -v
REM or the long version
cordova --version
До даты (29-12-2016) последняя версия — Cordova 6.4.0.
Обновление кордова
Для обновления Cordova так же просто выполнить следующую команду:
npm update -g cordova
И вы готовы работать с последней версией Cordova и ее новейшими инструментами.
2. Проверка платформ Cordova (Android, iOS, Windows)
Вы можете проверить платформы существующего проекта, используя cordova platform version
если вы находитесь в терминале вашего проекта, например, для проверки версии Android, вы можете выполнить следующую команду:
cordova platform version android
Выполнение предыдущей команды должно генерировать следующий вывод:
Обновление существующей платформы
Как упоминалось в причинах, по которым вам следует обновлять Cordova, это предупреждение для разработчиков на Android с версией Cordova с недостатками безопасности, если у вас есть существующая платформа, но она устарела, вы можете просто обновить ее, например, вы можете обновить платформа Android, выполняющая:
cordova platform update android
Для обновления платформы она должна существовать и быть уже установленной, в противном случае вы получите следующее предупреждение:
Ошибка: Платформа «андроид» пока не добавлена. Смотрите «Список платформ Cordova».
Как только вы выполните команду обновления, вы должны получить следующий вывод: