使用 Plugman 來管理外掛程式
從 3.0 版本開始,科爾多瓦實現所有設備 Api 作為外掛程式,然後留在預設情況下禁用。 此外,它還支援兩種不同的方法來添加和刪除外掛程式,根據您的工作流概述中討論的選擇:
如果您使用跨平臺的工作流,則使用
cordova
CLI 實用程式添加外掛程式,如所述的命令列介面。 CLI 一次修改所有指定平臺的外掛程式。如果你使用的平臺為中心的工作流程,您使用一個較低級別的Plugman命令列介面,分別為每個目標平臺。
本節詳細介紹的 Plugman 實用程式。 消費作為節點模組 Plugman 或修改的原始程式碼的詳細資訊,請參閱其庫中的讀我檔案.
安裝 Plugman
要安裝 plugman,您必須在您的機器上安裝的節點。 然後您可以運行下面的命令從任意位置在您的環境以全域,安裝 plugman,這樣就可從任何目錄中:
$ npm install -g plugman
您還必須有有 git
上你 PATH
,以便能夠直接從遠端 git Url 安裝的外掛程式。
提示: 如果您在安裝與 plugman 後發現 npm
你是仍然不能運行任何 plugman
的命令,請確保您已添加 /npm/
目錄到您PATH
.
注: 您可以跳過此步驟,如果你不想污染您的全球性 npm
通過全球範圍內安裝 Plugman 的命名空間。 如果這種情況,然後當你與外殼工具創建科爾多瓦專案,將有 node_modules
目錄裡面您的專案包含 Plugman。 由於全球範圍內你沒有安裝,您需要調用 node
的每個 Plugman 命令,例如 node
./node_modules/plugman/main.js -version
。 本指南的其餘部分假定您已安裝 Plugman 就全球而言,意味著您可以調用它與只是plugman
.
創建一個專案,科爾多瓦
您可以使用 Plugman 之前,您必須創建一個科爾多瓦專案。 你可以用命令列介面或更低的級別的 shell 腳本。 使用 shell 腳本來創建您的專案的說明都位於平臺指南頁上列出的各項"命令列工具"指南。
添加外掛程式
一旦你已經安裝了 Plugman,並已創建一個科爾多瓦專案,您可以開始將外掛程式添加到與平臺:
$ plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin <name|url|path> [--plugins_dir <directory>] [--www <directory>] [--variable <name>=<value> [--variable <name>=<value> ...]]
使用最小的參數,此命令將外掛程式安裝到科爾多瓦的一個專案。 您必須指定一個為該平臺的平臺和科爾多瓦的專案位置。 此外必須指定與不同的外掛程式, --plugin
參數形式是:
-
name
: 目錄名稱外掛程式內容存在的地方。 這必須是現有目錄下的--plugins_dir
路徑 (見下面的詳細資訊) 或一個外掛程式在科爾多瓦註冊表中的。 -
url
: URL 以 HTTPs:// 或 git 開始: / / 指向一個有效 git 存儲庫,是複本,包含plugin.xml
檔。 這個資料庫的內容將複製到--plugins_dir
. -
path
: 目錄包含一個有效的外掛程式,其中包括路徑plugin.xml
檔。此路徑的內容將被覆制到--plugins_dir
.
其他參數:
-
--plugins_dir
預設值為<project>/cordova/plugins
,但可以為每個包含子目錄中任何目錄獲取外掛程式。 -
--www
預設值為專案的www
資料夾的位置,但可以作為科爾多瓦專案應用程式 web 資產使用的任何目錄。 -
--variable
允許指定某些變數在安裝時,有必要對某些外掛程式需要 API 金鑰或其他自訂的使用者定義的參數。 請外掛程式規範的詳細資訊,參閱。
刪除某個外掛程式
若要卸載外掛程式,你只需通過 --uninstall
標記,並提供外掛程式 id。
$ plugman --uninstall --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin <id> [--www <directory>] [--plugins_dir <directory>]
説明命令
Plugman 特色全球説明命令,可以説明你如果你卡住或遇到的問題。它將顯示所有可用的 Plugman 命令和它們的語法的清單:
plugman -help
plugman # same as above
注: plugman -help
可能會顯示一些額外的與註冊表相關的命令。 這些命令用於外掛程式開發人員,不可能進行協力廠商外掛程式登記處。
您還可以將追加 --debug|-d
旗子到任何 Plugman 命令以運行該命令以詳細模式,將顯示任何內部調試消息,因為他們排放和可説明您跟蹤下像缺少檔的問題。
# Adding Android battery-status plugin to "myProject":
plugman -d --platform android --project myProject --plugin cordova-plugin-battery-status
最後,您可以使用 --version|-v
標誌來查看您使用哪個版本的 Plugman。
plugman -v
註冊表操作
那裡有很多的 plugman 命令,可以用於與外掛程式註冊表進行交互。 請注意這些註冊表命令是特定于plugins.cordova.io外掛程式註冊表,不可能由協力廠商外掛程式登記處執行。
尋找一個外掛程式
您可以使用 Plugman 來搜索外掛程式註冊表外掛程式 id 的匹配給定以空格分隔的關鍵字清單。
plugman search <plugin keywords>
更改外掛程式註冊表
您可以獲取或設置當前外掛程式註冊表的 URL,使用的 plugman。通常你應該離開這在 HTTP://registry.cordova.io 設置,除非您想要使用協力廠商外掛程式註冊表。
plugman config set registry <url-to-registry>
plugman config get registry
獲取外掛程式的資訊
您可以獲得有關任何特定外掛程式在外掛程式庫中存儲的資訊:
plugman info <id>
這將聯繫的外掛程式註冊表和提取資訊,如外掛程式的版本編號。
安裝核心外掛程式
下面的示例顯示如何添加外掛程式,如需要,這樣您在您的專案中使用任何科爾多瓦 Api 仍然工作後你升級到 3.0 版本。對於每個命令,你需要選擇目標平臺,並引用該平臺的專案目錄。
cordova-plugin-battery-status
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-battery-status
cordova-plugin-camera
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-camera
cordova-plugin-console
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-console
cordova-plugin-contacts
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-contacts
cordova-plugin-device
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-device
cordova-plugin-device-motion (accelerometer)
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-device-motion
cordova-plugin-device-orientation (compass)
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-device-orientation
cordova-plugin-dialogs
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-dialogs
cordova-plugin-file
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-file
cordova-plugin-file-transfer
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-file-transfer
cordova-plugin-geolocation
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-geolocation
cordova-plugin-globalization
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-globalization
cordova-plugin-inappbrowser
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-inappbrowser
cordova-plugin-media
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-media
cordova-plugin-media-capture
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-media-capture
cordova-plugin-network-information
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-network-information
cordova-plugin-splashscreen
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-splashscreen
cordova-plugin-vibration
plugman --platform <ios|amazon-fireos|android|blackberry10|wp8> --project <directory> --plugin cordova-plugin-vibration