Cordova Plugin Variables between fetch.json and config.xml
所以我正在构建一个 cordova 应用程序,它使用 Facebook 登录插件(但问题也适用于任何其他插件)。有时我想更改插件连接到的 Facebook APP_ID,所以我假设以下流程可行:
首先。使用新的 Facebook ID
更改 config.xml 中的变量
1 2 3 4 | <plugin name="cordova-plugin-facebook4" spec="~1.7.1"> <variable name="APP_ID" value="1728167004731036" /> <variable name="APP_NAME" value="QuickShop Sandbox" /> </plugin> |
第二。执行
但是,以下文件保留了安装插件时在
1 2 3 4 | platforms/android/android.json platforms/android/res/values/facebookconnect.xml platforms/android/build/build/intermediates/incremental/mergeReleaseResources/merger.xml platforms/android/build/intermediates/res/merged/values/values.xml |
中的插件变量的最佳方法是什么
首先要解释几件事,您不必在 config.xml 中显式添加插件,因为它不是强制性的,如果需要,您可以使用
此命令添加插件并自动将条目添加到 config.xml
fetch.json 也是一个跟踪已安装插件的文件,它们的来源和修订,如 npm package.json 该文件在 cordova 添加/删除插件时更新。当我们
因此,如果要指示cordova 始终使用
-
在 config.xml 中定义插件依赖项(最好使用
--save 选项) -
删除插件文件夹中的平台和内容
-
运行
cordova platform add PLATFORM_NAME 命令
这确保插件信息是 config.xml 总是被尊重