更改为3.1.0后,声音无法在Phonegap应用程序中播放

时间:2014-03-26 18:17:19

标签: ios audio mobile cordova

我有一个phonegap应用程序,当你点击和图标时播放声音。在将我的phonegap构建版本从2.9.0升级到3.1.0(ios 7构建支持)之前,它工作正常。

这是我的代码

        //Play Audio
        function playAudio(src) {
            if (device.platform == 'Android') {
            src = '/android_asset/www/' + src;
            }                
            var media = new Media(src, success, error_error);   
            // Set Volume
            media.setVolume('0.7');
            media.play();

        }

        function success() {
            // Default the icon
            $('#sound-icon').removeClass('sound-icon-active').addClass('sound-icon-default');
            //Ga tracking
            ga_storage._trackEvent('Sound Played', 'Play', 'Sound Played succesfully.');

        } 

代码神秘地停止了工作。我可以在这里遗漏一些东西,或者iOS SDK中有没有改变的东西

编辑:我根据Dawson Loudon的输入解决了这个问题,在phonegap 3.x中,您必须包含不同的插件才能访问设备特定的功能。在我的情况下,我需要添加以下内容:

  

到config.xml。

希望这有助于其他人。

1 个答案:

答案 0 :(得分:0)

从PhoneGap 2.x迁移到3.x时,最大的变化是所有API都被分解为单独的插件。这意味着任何特定于设备的API都需要作为插件安装。

查看代码,您需要安装devicemedia个插件。

对于PhoneGap Build,将其添加到config.xml

<gap:plugin name="org.apache.cordova.device" version="0.2.8" />
<gap:plugin name="org.apache.cordova.media" version="0.2.8" />

对于CLI,运行这些命令(并重建或准备):

(sudo) cordova plugin add org.apache.cordova.device
(sudo) cordova plugin add org.apache.cordova.media