Как объясняет @Dexter, добавление плагинов config.xml
через cordova plugin add some-plugin --save
отлично работает, если вы делаете чистую проверку и запустить cordova prepare
- плагины, перечисленные в config.xml
будут установлены в версиях, указанных в config.xml
.
Однако, если у вас есть существующая проверка с установленными плагинами, это не будет обновлять ваши плагины до версий, указанных в config.xml
. Он будет устанавливать только новые плагины, которые были добавлены в config.xml
с момента последнего запуска cordova prepare
.
Например, если у вас есть локальный проект, в котором установлен [email protected]
и сделать git pull
который обновляет config.xml
содержать:
<plugin name="cordova-plugin-device" spec="~1.1.4" />
Если запустить cordova prepare
, плагин устройство не будет обновлен до v1.1.4
, Чтобы сделать это, вам нужно вручную удалить и заново добавить плагин:
cordova plugin rm cordova-plugin-device && cordova plugin add cordova-plugin-device
По этой причине я создал несколько инструментов, чтобы помочь мне с этим сценарием: используя комбинацию cordova-check-plugins и cordova-plugin-config-command , вы можете вставить элемент <command>
в config.xml
, который будет синхронизировать локально установленные плагины с настройками, указанными в config.xml
, включая установку отсутствующих и обновление любых версий, версия которых отличается от версии, указанной в config.xml
.
Например, для автоматического обновления установленных плагинов, чтобы соответствовать версии, указанные в config.xml:
<command
name="cordova-check-plugins"
args="--target=config --update=auto --allow-downdate"
hook="before_prepare"
display_output="true"
abort_on_error="true"
/>