繁体   English   中英

手动将Cordova插件添加到Cordova项目的正确方法是什么

[英]what is the correct way to manually add Cordova plugin to Cordova project

我正在使用Android Studio开发Cordova项目。 我想将Cordova设备插件添加到我的项目中。 据我了解,Cordova插件由device.jsDevice.java ,它们已在插件文件夹中找到。 我将Device.java复制到CordovaLib/src/org/apache/cordova/device/文件夹中,并将device.jsassets/www/plugins/org.apache.cordova.device/www文件夹中。 我还将它包含在由Cordova自动创建的index.html cordova_plugins.js文件中。 它具有以下内容:

cordova.define('cordova/plugin_list', function(require, exports, module) {
module.exports = [
    {
        "file": "plugins/org.apache.cordova.device/www/device.js",
        "id": "org.apache.cordova.device.device",
        "clobbers": [
            "device"
        ]
    }
];
module.exports.metadata = 
// TOP OF METADATA
{
    "org.apache.cordova.device": "0.2.12"
}
// BOTTOM OF METADATA
});

现在,当我成功构建我的应用程序并运行它时,我收到Error initializing Cordova: Class not found错误。 我究竟做错了什么?

如果直接在platform / android文件夹中进行更改,请勿使用CLI添加插件,则可能会丢失代码(使用cli添加插件时,只有在运行cordova prepare android时,它才会真正添加到平台中cordova prepare android ,它将用根www文件夹中的代码覆盖platform / android / assets / www中的代码(可能不是您想要的)。

将插件直接添加到平台的推荐方法是使用Plugman工具

如果您真的想手动执行所有操作,那么您需要观看的文件是plugin.xml。 在此文件中,您将找到要修改的文件,例如config.xml,AndroidManifest.xml或cordova_plugins.js。

您不应该从index.xml加载cordova_plugins.js,而是使用require从cordova.js(以及插件的Javascrips)自动加载。

假设您使用的是cordova / phonegap版本> 3,则应使用cordova cli(命令行界面)方法来添加插件。据我所记得,还需要添加/删除核心插件(由cordova团队维护)。从3.2或3.4版本开始。

无论如何,您应该调用: cordova plugin add org.apache.cordova.device从命令提示符(顶级www文件夹所在的位置)中cordova plugin add org.apache.cordova.device

有关更多详细信息,请参见此处的 cordova文档(滚动至底部)。

请注意,我从未使用过Android Studio,仅使用过Eclipse,但是它们应该与IDE无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM