如果无法安装插件,如何明确失败Cordova/Ionic构建



我的应用程序需要一个非常重要的插件。在构建服务器中,在使用Cordova CLI添加平台或构建时,Cordova试图获取插件。当插件获取失败时,它会默默显示错误,但Cordova构建仍然成功。理想情况下,如果构建无法获取该插件,则应将失败。

在这种情况下,我如何显式cordova构建,以便我不会将不需要的构建运送到设备?

不幸的是, cordovanpmgradleApple LLVM零件与不太相关。他们每个人都生活在自己的生态系统中。这就是为什么它会失败,但同时成功。科尔多瓦并非如此。关心NPM,这两个本地编译器都不是。

请注意,我有点自鸣得意地提到本地一侧?那是关键。您可以做的是创建自己的插件,该插件会导致本机构建如果不存在某些文件。

它不必是官方的"插件",只需创建一些文件,就在您的config.xml中包括:

<plugin name="cordova-plugin-validator" spec="file:plugins/cordova-plugin-validator">

可以在其官方网站上找到一个非常简单的指南:https://cordova.apache.org/docs/en/latest/guide/guide/hybrid/hhybrid/plugins/

您甚至不需要创建验证器插件JavaScript文件,您只需要包含本地零件,例如(从指南复制和修改,只需更改文件名(:

<?xml version="1.0" encoding="UTF-8"?>
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
        id="cordova-plugin-device" version="0.2.3">
    <platform name="ios">
        <config-file target="config.xml" parent="/*">
            <feature name="Device">
                <param name="ios-package" value="CDVDevice"/>
            </feature>
        </config-file>
        <header-file src="src/ios/ImportantPluginValidator.h" />
        <source-file src="src/ios/ImportantPluginValidator.m" />
    </platform>
    platform name="android">
        <config-file target="config.xml" parent="/*">
            <feature name="Validator">
                <param name="android-package" value="com.cordova.important.plugin.validator.ImportantPluginValidator"/>
            </feature>
        </config-file>
        <source-file src="src/android/ImportantPluginValidator.java" target-dir="src/org/apache/cordova/plugin" />
    </platform>
</plugin>

和您的iOS(.h and .m(和Android(.java(文件只需要包括您的插件软件包,例如

import my.important.plugin;

#import "MyImportantPlugin.h"

就是这样。如果这些文件和软件包可用,则是金色的。如果缺少它们,本机编译器将使用硬 nope!

失败

相关内容

  • 没有找到相关文章

最新更新