cordova-plugin-crypt-file - requireCordovaModule error

use*_*426 6 module require cordova

I just upgrade Cordova to version 9. It cased plugin cordova-plugin-crypt-file to stop working - when I build the application, I get error

Using "requireCordovaModule" to load non-cordova module "path" is not supported. Instead, add this module to your dependencies and use regular "require" to load it.
Run Code Online (Sandbox Code Playgroud)

It looks like the issue is with file hooks/after_prepare.js. The code is

var path              = context.requireCordovaModule('path'),
        fs                = context.requireCordovaModule('fs'),
        crypto            = context.requireCordovaModule('crypto'),
        Q                 = context.requireCordovaModule('q'),
        cordova_util      = context.requireCordovaModule('cordova-lib/src/cordova/util'),
        platforms         = context.requireCordovaModule('cordova-lib/src/platforms/platforms'),
        Parser            = context.requireCordovaModule('cordova-lib/src/cordova/metadata/parser'),
        ParserHelper      = context.requireCordovaModule('cordova-lib/src/cordova/metadata/parserhelper/ParserHelper'),
        ConfigParser      = context.requireCordovaModule('cordova-common').ConfigParser; 
Run Code Online (Sandbox Code Playgroud)

So I changed all context.requireCordovaModule to simple require. It produces new error message:

Cannot find module 'cordova-lib/src/cordova/util'
Run Code Online (Sandbox Code Playgroud)

Please, could anybody help me with fix? Or, is there any alternative plugin?

Kli*_* Ru 5

我有同样的问题。您需要将cordova降级到8.1.2版本

npm uninstall -g cordova
npm cache clean --force
npm i -g cordova@8.1.2
Run Code Online (Sandbox Code Playgroud)


Pet*_*dad 5

请使用以下插件:

https://github.com/PeterHdd/cordova-plugin-crypto-file

它基于cordova-plugin-crypt-file.

上述插件适用于cordova-plugin-ionic-webview,我已经更新了插件,现在它适用于cordova 9,因此无需降级。

要安装它,请执行以下操作:

npm i cordova-plugin-crypto-file@latest
Run Code Online (Sandbox Code Playgroud)

最新版本 1.4.0 修复了cordova 9 问题。