首页 文章

如何在应用程序中使用cordova插件

提问于
浏览
0

我正在开发一个用于在android中读取mp3元数据的cordova插件,我已经在我的应用程序中安装了该插件但是当我尝试调用cordova.exec插件时,我收到一个控制台错误,上面写着"MediaMeta is not defined" . 我的插件在这里:https://github.com/stlouisweb/mediaMetadata并在我的应用程序中我试图访问它:

function getMetaData(fullpath) {
document.addEventListener("deviceready", function () {
    var fullpath = fullpath;
    var success = function(trackinfo)
    {
       // result = JSON.stringify(result);
        console.log(trackinfo);
       // data.push(JSON.parse(result));
    };
    var error = function(message) { alert("Metadata received unsuccessfully: " + message); };
    MediaMeta.createEvent(fullpath, success, error);

})

}

2 回答

  • 1

    尝试像这样更新 plugin.xml

    更改:

    <plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
        id="com.stlouisweb.mediametadata"
        version="0.1.0">
    

    至:

    <plugin xmlns="http://www.phonegap.com/ns/plugins/1.0"
        xmlns:android="http://schemas.android.com/apk/res/android"
        id="com.stlouisweb.mediametadata"
        version="0.1.0">
    

    原因是Cordova要修改Android配置,这个XML需要为它命名 .

  • 0

    这是对回答问题的回应

    <js-module src="www/mediaMetadata.js" name="MediaMetadata">
        <clobbers target="window.Media" />
    </js-module>
    

    <js-module src="www/mediaMetadata.js" name="MediaMetadata">
        <clobbers target="cordova.plugins.media" />
    </js-module>
    

    并更改您的文档,示例等以使用 cordova.plugins.media

相关问题