Config.xml API
config.xml
檔案是一個全域組態檔,用於管理 Cordova 應用程式行為的各個方面。它以 XML 格式編寫,並遵循 W3C 封裝式 Web 應用程式 (Widgets) 規範中概述的結構。此外,它還擴展了核心 Cordova API 功能、外掛和特定於平台的設定。
如果您使用 Cordova CLI 來建立專案(如 命令列介面 中所述),您可以在專案的頂層目錄中找到 config.xml
檔案。
./hellocordova
└── config.xml
當使用 CLI 建置專案時,此檔案的版本會被被動地複製到各種 platforms/
子目錄中。例如
./hellocordova
└── platforms
├── android
│ └── app
│ └── src
│ └── main
│ └── res
│ └── xml
│ └── config.xml
└── ios
└── HelloCordova
└── config.xml
某些平台提供整合開發環境 (IDE),例如 iOS 的 Xcode 和 Android 的 Android Studio,讓您能夠建置和測試應用程式。如果您選擇使用這些 IDE 來建置和測試專案,建議您在每次變更 Cordova 應用程式的 config.xml
時執行 cordova prepare
CLI 命令。這可確保更新的組態複製到各自的 platforms/
子目錄中。
除了下面描述的組態選項之外,您還可以在每個目標平台上自訂應用程式的核心圖像集。如需更多資訊,請參閱自訂圖示主題。
config.xml
範例
<?xml version="1.0" encoding="UTF-8"?>
<widget xmlns="http://www.w3.org/ns/widgets"
xmlns:cdv="https://cordova.dev.org.tw/ns/1.0"
id="io.cordova.hellocordova"
version="1.0.0">
<name>HelloCordova</name>
<description>Sample Apache Cordova App</description>
<author email="dev@cordova.apache.org" href="https://cordova.dev.org.tw">
Apache Cordova Team
</author>
<content src="index.html" />
<!-- Security Related Settings -->
<access origin="https://cordova.dev.org.tw" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<!-- Platform Configs & Platform Overriding Configs -->
<platform name="android"></platform>
<platform name="ios"></platform>
</widget>
widget
config.xml 文件中的根元素。
屬性 | 描述 |
---|---|
id 字串 |
必要 指定應用程式的識別碼。 id 應採用反向 DNS 格式,但只允許使用字母數字和點字元。例如:com.example.myapp |
version 字串 |
必要 以主要/次要/修補程式符號表示的完整版本號碼。 |
android-versionCode 字串 |
Android 的替代版本。設定應用程式的版本代碼。有關如何修改此屬性的資訊,請參閱Android 指南。 |
ios-CFBundleVersion 字串 |
iOS 的替代版本。如需更多詳細資料,請參閱Apple Developer - CFBundleVersion。 |
android-packageName 字串 |
此偏好設定會覆寫 id 屬性,並使用專門用於 Android 的替代套件名稱。 |
ios-CFBundleIdentifier 字串 |
此偏好設定會覆寫 id 屬性,並使用專門用於 iOS 的替代套件 ID。 |
defaultlocale 字串 |
使用 IANA 語言代碼指定應用程式的預設語言。此偏好設定鍵明確設定 CFBundleDevelopmentRegion 的值。例如,您可以使用類似 en 或 en_US 的值。 |
android-activityName 字串 |
在 AndroidManifest.xml 中設定應用程式的活動名稱。請注意,這只會在第一次新增 Android 平台後設定一次。 |
xmlns 字串 |
必要 config.xml 文件的命名空間。 |
xmlns:cdv 字串 |
必要 命名空間前置詞。 |
範例
<!-- Android -->
<widget id="io.cordova.hellocordova" version="0.0.1" android-versionCode="13" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="https://cordova.dev.org.tw/ns/1.0">
</widget>
<!-- iOS -->
<widget id="io.cordova.hellocordova" version="0.0.1" ios-CFBundleVersion="0.1.3" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="https://cordova.dev.org.tw/ns/1.0">
</widget>
name
指定應用程式的正式名稱,如其在裝置的主螢幕和應用程式商店介面中顯示的名稱。
範例
<widget ...>
<name>HelloCordova</name>
</widget>
short name
指定應用程式的可選顯示名稱。有時,由於空間有限,應用程式名稱在裝置主螢幕上顯示的方式應與資訊和應用程式商店介面不同。
範例
<widget ...>
<name short="HiCdv">HelloCordova</name>
</widget>
description
指定可能會出現在應用程式商店清單中的中繼資料。
範例
<widget ...>
<description>A sample Apache Cordova application</description>
</widget>
author
指定可能會出現在應用程式商店清單中的聯絡資訊。
屬性 | 描述 |
---|---|
email 字串 |
必要 作者的電子郵件。 |
href 字串 |
必要 作者的網站。 |
範例
<widget ...>
<author email="dev@cordova.apache.org" href="https://cordova.io"></author>
</widget>
content
定義應用程式在頂層 Web 資產目錄中的起始頁面。預設值為 index.html,通常會出現在專案的頂層 www
目錄中。
屬性 | 描述 |
---|---|
src 字串 |
必要 定義應用程式在頂層 Web 資產目錄中的起始頁面。預設值為 index.html,通常會出現在專案的頂層 www 目錄中。 |
範例
<widget ...>
<content src="startPage.html"></content>
</widget>
access
定義應用程式允許與之通訊的外部網域。當 access origin 設定為「*」時,應用程式可以存取任何伺服器,但這可能會造成安全風險。建議明確指定允許的 URL,以確保組態安全。如需詳細說明,請參閱允許清單指南。
屬性 | 描述 |
---|---|
origin 字串 |
必要 定義應用程式允許與之通訊的外部網域 URL 或 URL 模式。 |
範例
<widget ...>
<access origin="*"></access>
</widget>
<widget ...>
<access origin="http://google.com"></access>
</widget>
allow-navigation
控制 WebView 可以導覽至的 URL。僅適用於頂層導覽。如需詳細資訊,請參閱允許清單指南。
屬性 | 描述 |
---|---|
href 字串 |
必要 定義 WebView 允許導覽至的外部網域或網域模式。 |
範例
<!-- Allow links to example.com -->
<allow-navigation href="http://example.com/*" />
<!-- Wildcards are allowed for the protocol, as a prefix to the host, or as a suffix to the path -->
<allow-navigation href="*://*.example.com/*" />
allow-intent
控制應用程式允許要求系統開啟的 URL。預設情況下,不允許任何外部 URL。如需詳細資訊,請參閱允許清單指南。
屬性 | 描述 |
---|---|
href 字串 |
必要 定義應用程式允許要求系統開啟的 URL 或 URL 模式。 |
範例
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
edit-config
請參閱 plugin.xml 的 <config-file> 文件。
config-file
請參閱 plugin.xml 的 <config-file> 文件。
engine
指定在 prepare 期間要還原的平台相關詳細資訊。
屬性 | 描述 |
---|---|
name 字串 |
必要 要還原的平台名稱 |
spec 字串 |
必要 要還原的平台相關詳細資訊。這可以是 major.minor.patch 版本號碼、包含平台的目錄,或指向 Git 存放庫的 URL。此資訊將用於從 NPM、本機目錄或 Git 存放庫擷取要還原的平台程式碼。如需更多詳細資訊,請參閱平台規格。 |
範例
<engine name="android" spec="https://github.com/apache/cordova-android.git#5.1.1" />
<engine name="ios" spec="^4.0.0" />
plugin
指定在 prepare 期間要還原的外掛相關詳細資訊。當使用 --save
旗標新增外掛時,此元素會自動新增至專案的 config.xml
。如需新增外掛的更多資訊,請參閱CLI 參考資料。
注意:從 Cordova 9.x 開始,此標籤已過時。瞭解更多資訊
屬性 | 描述 |
---|---|
name 字串 |
必要 要還原的外掛名稱 |
spec 字串 |
必要 要還原的外掛相關詳細資訊。這可以是 major.minor.patch 版本號碼、包含外掛的目錄,或指向 Git 存放庫的 URL。此資訊將用於從 NPM、本機目錄或 Git 存放庫擷取要還原的外掛程式碼。如需更多詳細資訊,請參閱外掛規格。 |
範例
<plugin name="cordova-plugin-device" spec="^1.1.0" />
<plugin name="cordova-plugin-device" spec="https://github.com/apache/cordova-plugin-device.git#1.0.0" />
variable
保留 CLI 變數的值,以便在 prepare 期間還原外掛時使用。當使用 --save
旗標新增使用 CLI 變數的外掛時,此元素會新增至 config.xml
。如需新增外掛的更多資訊,請參閱CLI 參考資料。
請注意,此值僅在 prepare 期間將外掛還原至專案時使用,變更它「不會」變更外掛在目前專案中使用的值。為了讓此值的變更生效,請從專案中移除外掛並執行 cordova prepare
來還原它。如需 CLI 變數的更多詳細資料,請參閱 plugin.xml
的偏好設定元素。
屬性 | 描述 |
---|---|
name 字串 |
必要 CLI 變數的名稱。只能包含大寫字母、數字和底線。 |
value 字串 |
必要 在 prepare 期間還原父外掛時要使用的 CLI 變數值。 |
範例
<plugin name="cordova-plugin-device" spec="^1.1.0">
<variable name="MY_VARIABLE" value="my_variable_value" />
</plugin>
preference
將各種選項設定為名稱/值屬性對。每個偏好設定的名稱都不區分大小寫。許多偏好設定對於特定平台而言是獨一無二的,並且將會如此指示。
屬性 | 描述 |
---|---|
AllowInlineMediaPlayback 布林值 |
預設值:false 設定為 true 可允許 HTML5 媒體播放內嵌於螢幕版面配置中,使用瀏覽器提供的控制項,而不是原生控制項。為使其正常運作,請將 playsinline 屬性新增至任何 <video> 元素。注意:在 iOS 10 之前,<video> 元素需要改用 webkit-playsinline 屬性名稱。 |
AllowNewWindows 布林值 |
預設值:false 設定為 true 可允許 JavaScript window.open 和 HTML target="_blank" 連結開啟覆蓋在 Web 檢視上的新檢視。 |
AndroidLaunchMode 字串 |
預設值:singleTop 允許的值:standard、singleTop、singleTask、singleInstance 設定活動 android:launchMode 屬性。這會變更從應用程式圖示或意圖啟動應用程式且應用程式已在執行時會發生的情況。 |
AndroidInsecureFileModeEnabled 布林值 |
預設值:false 如果設定為 true ,則允許載入 file:/// URL。注意:啟用此設定會允許在 file:/// 環境中載入的惡意指令碼啟動跨網站指令碼攻擊,從而存取任意本機檔案,包括 WebView Cookie、應用程式私人資料,甚至是在任意網站上使用的認證。 |
android-maxSdkVersion 數字 |
預設值:未指定 在專案的 AndroidManifest.xml 中設定 <uses-sdk> 標籤的 maxSdkVersion 屬性(請參閱此處)。 |
android-minSdkVersion 數字 |
預設值:取決於 cordova-android 版本 設定專案 AndroidManifest.xml 中 <uses-sdk> 標籤的 minSdkVersion 屬性(請參閱此處)。 |
android-targetSdkVersion 數字 |
預設值:取決於 cordova-android 版本 設定專案 AndroidManifest.xml 中 <uses-sdk> 標籤的 targetSdkVersion 屬性(請參閱此處)。 |
android-compileSdkVersion 數字 |
預設值:取決於 cordova-android 版本 設定 compileSdkVersion 屬性。 |
android-buildToolsVersion Semver |
預設值:取決於 cordova-android 版本 需要完整的版本字串,例如 "32.0.0"。更改此設定可能還需要更改 PATH 環境變數,以便找到正確的建置工具。 此偏好設定主要用於 Cordova 開發,以測試 Android SDK 的即將發布版本。更改此設定有很高的風險會導致建置失敗,因為較新的建置工具經常引入重大變更。 |
GradleVersion 字串 |
預設值:取決於 cordova-android 版本 設定要使用的 Gradle Wrapper 版本。 此偏好設定主要用於 Cordova 開發,以測試 Android SDK 的即將發布版本。更改此設定有很高的風險會導致建置失敗,因為較新的建置工具經常引入重大變更。 |
AndroidGradlePluginVersion Semver |
預設值:取決於 cordova-android 版本 設定要使用的 Android Gradle 外掛程式版本。 此偏好設定主要用於 Cordova 開發,以測試 Android SDK 的即將發布版本。更改此設定有很高的風險會導致建置失敗,因為較新的建置工具經常引入重大變更。 |
AndroidXAppCompatVersion Semver |
預設值:取決於 cordova-android 版本 覆寫 Android App Compat 程式庫版本。 |
AndroidXWebKitVersion Semver |
預設值:取決於 cordova-android 版本 覆寫 Android WebKit 程式庫版本。 |
GradlePluginKotlinEnabled 布林值 |
預設值:false 啟用 Kotlin 外掛程式以支援 Kotlin。 |
AppendUserAgent 字串 |
如果設定此值,它將附加到 webview 的舊 UserAgent 字串的末尾。當與 OverrideUserAgent 一起使用時,此值將被忽略。 |
BackgroundColor 字串 |
設定應用程式的背景顏色。支援四位元組的十六進位值,其中第一個位元組代表 alpha 通道,後面的三個位元組代表標準 RGB 值。 注意: transparent 值會將 Windows 上的應用程式磚背景設定為輔色。 |
CordovaWebViewEngine 字串 |
預設值:CDVWebViewEngine 這會設定用於渲染主應用程式的 WebView 引擎外掛程式。該外掛程式必須符合 CDVWebViewEngineProtocol 協定。此處的 'value' 應與已安裝的 WebView 引擎外掛程式的 'feature' 名稱相符。此偏好設定通常會由已安裝的 WebView 引擎外掛程式自動設定。 |
DefaultVolumeStream 字串 |
預設值:預設 在 cordova-android 3.7.0 中新增,此偏好設定會設定硬體音量按鈕連結到的音量。預設情況下,手機為「通話」,平板電腦為「媒體」。將此設定為「媒體」,讓您的應用程式的音量按鈕始終變更媒體音量。請注意,當使用 Cordova 的媒體外掛程式時,當任何媒體物件處於活動狀態時,音量按鈕會動態變更為控制媒體音量。 |
DisallowOverscroll 布林值 |
預設值:false 如果您不希望在使用者滾動超出內容的開頭或結尾時介面顯示任何回饋,請設定為 true。在 iOS 上,過度捲動手勢會導致內容彈回其原始位置。在 Android 上,它們會在內容的頂部或底部邊緣產生更細微的發光效果。 |
EnableViewportScale 布林值 |
預設值:false 設定為 true 以允許 viewport meta 標籤停用或限制使用者縮放的範圍,預設情況下會啟用縮放。在 HTML 中放置如下的 viewport,以停用縮放並使內容在渲染 WebView 中靈活地適配 <meta name='viewport' content='width=device-width, initial-scale=1, user-scalable=no' /> |
ErrorUrl 網址 |
預設值:null 當設定此偏好設定時,應用程式在遇到錯誤時會顯示指定的本機頁面。此外,如果設定此偏好設定,Android 系統將會抑制標題為「應用程式錯誤」的預設對話方塊。 |
FullScreen 布林值 |
預設值:false 允許您隱藏螢幕頂部的狀態列。 注意:建議使用與平台無關的方法來實現此目的,即使用 StatusBar 外掛程式。 |
GapBetweenPages 浮點數 |
預設值:0 頁面之間間隙的大小,以點為單位。 |
GradlePluginGoogleServicesEnabled 布林值 |
預設值:false 設定為 true 以啟用 Google Services Gradle 外掛程式。 |
GradlePluginGoogleServicesVersion Semver |
預設值:取決於 cordova-android 版本 覆寫 Google Services 程式庫版本。 |
GradlePluginKotlinEnabled 布林值 |
預設值:false 設定為 true 以允許建置 Kotlin 檔案。 |
GradlePluginKotlinCodeStyle 字串 |
預設值:official 允許的值:official、obsolete 設定 Kotlin 程式碼的格式化方式,以提高可讀性。 |
GradlePluginKotlinVersion Semver |
預設值:1.3.50 設定要使用的 Kotlin Gradle 外掛程式版本。 |
InAppBrowserStorageEnabled 布林值 |
預設值:true 控制在 InAppBrowser 中開啟的頁面是否可以存取與預設瀏覽器開啟的頁面相同的 localStorage 和 WebSQL 儲存。 |
InspectableWebview 布林值 |
預設值:取決於除錯/發佈版本 在 iOS 16.4 或更新版本上,啟用或停用 webview 檢測器。在除錯版本中預設為 true ,在發佈版本中預設為 false 。在 iOS 16.3 及更早版本上會忽略此偏好設定;檢測器在除錯版本中始終啟用,在發佈版本中始終停用。 |
KeepRunning 布林值 |
預設值:true 決定應用程式在觸發 pause 事件後是否仍會在背景中執行。將此設定為 false 並不會在觸發 pause 事件後終止應用程式,而只是在應用程式在背景中時暫停 cordova webview 中程式碼的執行。 |
KeyboardDisplayRequiresUserAction 布林值 |
預設值:true 設定為 false 以允許在對表單輸入呼叫 focus() 時顯示鍵盤。 |
LoadUrlTimeoutValue 數字 |
預設值:20000,20 秒 載入頁面時,在擲回逾時錯誤之前等待的時間(以毫秒為單位)。 |
LoadingDialog 字串 |
預設值:null 如果設定,則在載入應用程式的第一個頁面時,會顯示一個帶有指定標題、訊息和微調器的對話方塊。標題和訊息在此值字串中以逗號分隔,並且在顯示對話方塊之前會移除該逗號。 |
LogLevel 字串 |
預設值:DEBUG 允許的值:ERROR、WARN、INFO、DEBUG、VERBOSE 設定將篩選您的應用程式的記錄訊息的最低記錄層級。 |
MediaPlaybackAllowsAirPlay 布林值 |
預設值:true 設定為 false 以防止在此檢視中使用 AirPlay。在預設 UIWebView 和 WKWebView 中可用。 |
MediaPlaybackRequiresUserAction 布林值 |
預設值:false 設定為 true 以防止 HTML5 影片或音訊透過 autoplay 屬性或透過 JavaScript 自動播放。 |
Orientation 字串 |
預設值:預設 允許的值:預設、橫向、直向 允許您鎖定方向,並防止介面因方向變更而旋轉。 注意:預設值表示 Cordova 將從平台的資訊清單/組態檔中刪除方向偏好設定項目,允許平台回復為其預設行為。對於 iOS,若要同時指定直向和橫向模式,您可以使用平台特定的值 'all'。 |
OverrideUserAgent 字串 |
如果設定此值,它將取代 webview 的舊 UserAgent。這有助於在請求遠端頁面時識別來自應用程式/瀏覽器的請求。請謹慎使用,這可能會導致與 Web 伺服器的相容性問題。在大多數情況下,請改用 AppendUserAgent。 |
PageLength 浮點數 |
預設值:0 每個頁面的大小,以點為單位,在頁面流動的方向上。當 PaginationMode 為從右到左或從左到右時,此屬性表示每個頁面的寬度。當 PaginationMode 為從上到下或從下到上時,此屬性表示每個頁面的高度。預設值為 0,表示配置會使用視口的大小來判斷頁面的尺寸。 |
PaginationBreakingMode 字串 |
預設值:page 允許的值:page、column 有效值為 page 和 column。發生分欄或分頁的方式。此屬性決定是否會遵守或忽略有關分欄和分頁的某些 CSS 屬性。當此屬性設定為 column 時,內容會遵守與分欄相關的 CSS 屬性,而不是分頁。 |
PaginationMode 字串 |
預設值:unpaginated 允許的值:unpaginated、leftToRight、topToBottom、bottomToTop、rightToLeft 此屬性決定網頁檢視中的內容是分為一次填滿一個螢幕的頁面,還是顯示為一個長滾動檢視。如果設定為分頁形式,則此屬性會在內容上切換分頁配置,導致網頁檢視使用 PageLength 和 GapBetweenPages 的值來重新配置其內容。 |
PreferredContentMode 字串 |
預設值:auto 設定 iPad 上的 WebView 和 InAppBrowser WebView 的內容模式(使用者代理)。有效值為: mobile 和 desktop 。 |
InAppBrowserStatusBarStyle 字串 |
預設值:預設 設定 iOS 的 InAppBrowser 的狀態列文字顏色樣式。有效值為: lightcontent 和 default 。 |
SetFullscreen 布林值 |
預設值:false 與此 xml 檔案全域組態中的 Fullscreen 參數相同。此特定於 Android 的元素已棄用,改用全域 Fullscreen 元素,並將在未來版本中移除。 |
ShowTitle 布林值 |
預設值:false 在螢幕頂部顯示標題。 |
Suppresses3DTouchGesture 布林值 |
預設值:false 設定為 true 以避免啟用 3D Touch 的 iOS 裝置在使用者在長按網頁檢視時施加壓力時渲染放大鏡 widget。請徹底測試您的應用程式,因為這會停用 onclick 處理常式,但與 ontouchend 配合良好。如果此設定為 true,則 SuppressesLongPressGesture 也會有效地為 true。 |
SuppressesIncrementalRendering 布林值 |
預設值:false 設定為 true 以等待接收到所有內容後再將其渲染到螢幕上。 |
SuppressesLongPressGesture 布林值 |
預設值:false 設定為 true 以避免 iOS9+ 在使用者長按網頁檢視時渲染放大鏡 widget。請徹底測試您的應用程式,因為這可能會干擾文字選取功能。 |
SwiftVersion 字串 |
預設值:(空白) 設定以指定 Swift 版本。 |
TopActivityIndicator 字串 |
預設值:灰色 允許的值:whiteLarge、white、gray。 控制狀態列中小旋轉圖示的外觀,該圖示表示重要的處理器活動。 |
UIWebViewDecelerationSpeed 字串 |
預設值:normal 允許的值:normal、fast 此屬性控制動量滾動的減速速度。normal 是大多數原生應用程式的預設速度,而 fast 是 Mobile Safari 的預設速度。 |
deployment-target 字串 |
這會在建置中設定 IPHONEOS_DEPLOYMENT_TARGET,最終會轉換為 ipa 中的 MinimumOSVersion。如需更多詳細資訊,請參閱 Apple 關於部署目標設定的文件 |
target-device 字串 |
預設值:universal 允許的值:handset、tablet、universal 此屬性直接對應到 xcode 專案中的 TARGETED_DEVICE_FAMILY。請注意,如果您以 universal 為目標(這是預設值),您需要提供 iPhone 和 iPad 的螢幕截圖,否則您的應用程式可能會被拒絕。 |
scheme 字串 |
預設值 - Android: https - iOS:未定義,但如果值無效,則會回復為 app 。允許的值 - Android: http 或 https - iOS:任何非保留的 scheme。(保留的 scheme 範例) 此屬性包含您的應用程式內容所使用的 scheme。 |
hostname 字串 |
預設值: localhost 此屬性包含應用程式內容所使用的 hostname。 如果未為 iOS 定義偏好設定 scheme ,則會忽略 hostname 值。 |
範例
<preference name="DisallowOverscroll" value="true"/>
<preference name="Fullscreen" value="true" />
<preference name="BackgroundColor" value="0xff0000ff"/>
<preference name="HideKeyboardFormAccessoryBar" value="true"/>
<preference name="Orientation" value="landscape" />
<!-- iOS only preferences -->
<preference name="EnableViewportScale" value="true"/>
<preference name="MediaPlaybackAllowsAirPlay" value="false"/>
<preference name="MediaPlaybackRequiresUserAction" value="true"/>
<preference name="AllowInlineMediaPlayback" value="true"/>
<preference name="TopActivityIndicator" value="white"/>
<preference name="SuppressesIncrementalRendering" value="true"/>
<preference name="GapBetweenPages" value="0"/>
<preference name="PageLength" value="0"/>
<preference name="PaginationBreakingMode" value="page"/>
<preference name="PaginationMode" value="unpaginated"/>
<preference name="UIWebViewDecelerationSpeed" value="fast" />
<preference name="ErrorUrl" value="myErrorPage.html"/>
<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
<preference name="AppendUserAgent" value="My Browser" />
<preference name="target-device" value="universal" />
<preference name="deployment-target" value="7.0" />
<preference name="CordovaWebViewEngine" value="CDVWebViewEngine" />
<preference name="CordovaDefaultWebViewEngine" value="CDVWebViewEngine" />
<preference name="SuppressesLongPressGesture" value="true" />
<preference name="Suppresses3DTouchGesture" value="true" />
<!-- Android only preferences -->
<preference name="KeepRunning" value="false"/>
<preference name="LoadUrlTimeoutValue" value="10000"/>
<preference name="InAppBrowserStorageEnabled" value="true"/>
<preference name="LoadingDialog" value="My Title,My Message"/>
<preference name="ErrorUrl" value="myErrorPage.html"/>
<preference name="ShowTitle" value="true"/>
<preference name="LogLevel" value="VERBOSE"/>
<preference name="AndroidLaunchMode" value="singleTop"/>
<preference name="AndroidInsecureFileModeEnabled" value="true" />
<preference name="DefaultVolumeStream" value="call" />
<preference name="OverrideUserAgent" value="Mozilla/5.0 My Browser" />
<preference name="AppendUserAgent" value="My Browser" />
<preference name="GradlePluginGoogleServicesEnabled" value="true" />
<preference name="GradlePluginGoogleServicesVersion" value="4.2.0" />
<preference name="GradlePluginKotlinEnabled" value="true" />
<preference name="GradlePluginKotlinCodeStyle" value="official" />
<preference name="GradlePluginKotlinVersion" value="1.3.50" />
feature
如果您使用 CLI 建置應用程式,您可以使用 plugin 命令來啟用裝置 API。這不會修改最上層的 config.xml 檔案,因此
屬性 | 描述 |
---|---|
name 字串 |
必要 要啟用的外掛程式名稱。 |
param
用於指定某些外掛程式參數,例如:從哪個套件擷取外掛程式碼,以及是否要在 Webview 初始化期間初始化外掛程式碼。
屬性 | 描述 |
---|---|
name 字串 |
必要 允許的值:android-package、ios-package、onload。 'ios-package' 和 'android-package' 用於指定用於初始化外掛程式碼的套件名稱(由 'value' 屬性指定),而 'onload' 用於指定當控制器初始化時是否要實例化對應的外掛程式(如 'value' 屬性中所指定)。 |
value 字串/布林值 |
必要 指定用於初始化外掛程式碼的套件名稱(當 'name' 屬性為 android-package 或 ios-package 時),指定在控制器初始化期間要載入的外掛程式名稱(當 'name' 屬性設定為 'onload' 時)。 |
範例
<!-- Here is how to specify the Device API for Android projects -->
<feature name="Device">
<param name="android-package" value="org.apache.cordova.device.Device" />
</feature>
<!-- Here's how the element appears for iOS projects -->
<feature name="Device">
<param name="ios-package" value="CDVDevice" />
<param name="onload" value="true" />
</feature>
platform
當使用 CLI 建置應用程式時,有時需要指定特定於特定平台的偏好設定或其他元素。使用
屬性 | 描述 |
---|---|
name 字串 |
必要 正在定義其偏好設定的平台。 |
範例
<platform name="android">
<preference name="Fullscreen" value="true" />
</platform>
hook
代表您的自訂腳本,當特定動作發生時(例如,在新增外掛程式或調用平台準備邏輯之後),Cordova 會呼叫該腳本。當您需要擴展預設的 Cordova 功能時,這很有用。有關更多資訊,請參閱 Hooks 指南。
屬性 | 描述 |
---|---|
type 字串 |
必要 指定要呼叫自訂腳本的動作。 |
src 字串 |
必要 指定當特定動作發生時,要呼叫的腳本位置。 |
範例
<hook type="after_plugin_install" src="scripts/afterPluginInstall.js" />
resource-file
這個標籤會將資源檔案安裝到您的平台中,與 plugin.xml 中的相同標籤類似。此標籤目前僅在 cordova-ios@4.4.0
或更高版本以及 cordova-android@6.2.1
或更高版本上支援。
屬性 | 描述 |
---|---|
src 字串 |
必要 檔案相對於 config.xml 的位置。 |
target 字串 |
檔案將被複製到您目錄中的路徑。 |
範例
針對 Android
<resource-file src="FooPluginStrings.xml" target="res/values/FooPluginStrings.xml" />