我有一个现有的本机Android应用程序,向其中添加了cordova Webview。这是Intellij的新gradle项目格式。我已经成功加载了cordova活动,并按预期打开。我通过遵循cordova docs添加了webview 。
现在,我想使用一些可用的插件,但是找不到将它们添加到项目中的方法。由于这不是Cordova生成的项目,因此Plugman无法正常工作。我尝试将我感兴趣的插件的JS和Java文件复制到源目录,但这会导致各种错误。
例如require是未定义的,当这种情况发生时,我在Webview的index.html中添加了requirejs,然后继续
Uncaught Error: Module name "cordova/exec" has not been loaded yet for context: _. Use require([])
http://requirejs.org/docs/errors.html#notloaded cordova.js:8
Failed to load resource file:///android_asset/www/scripts/cordova_plugins.js
deviceready has not fired after 5 seconds. cordova.js:1191
Channel not fired: onDOMContentLoaded
如何获得与此兼容的插件?
编辑:
我正在手动移动东西。
我不知道cordova_plugins.js或Cordova prepare生成了它们。
您必须使用Plugman在定制的Cordova WebView中管理您的插件。
请删除所有现有的插件,并使用Plugman阅读。
plugman install --platform android --project <proj> --plugin org.apache.cordova.battery-status --www <proj>/assets/www/scripts
其中<proj>
是创建主项目的文件夹,或者,您可以使用--www参数,该参数允许您指定Web应用程序根目录的存储位置。例子:
plugman install --platform android --project <proj> --plugin org.apache.cordova.battery-status --www <proj>/assets/www/scripts
编辑
如果您具有高度定制的项目,则可以创建一个空的Cordova项目,在其中添加插件,然后cordova_plugins.js
从该项目复制到assets\www\scripts
,Cordova应该选择这些文件。如果您的插件JS文件不在assets\www\scripts\plugins\
文件夹中,而是在其中,assets\www\plugins
则必须修改cordova_plugins.js
类似的内容
module.exports = [
.....
{
"file": "../plugins/org.apache.cordova.inappbrowser/www/InAppBrowser.js",
"id": "org.apache.cordova.inappbrowser.InAppBrowser",
"clobbers": [
"window.open"
]
},
...
]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句