如何在Firefox Mobile扩展中播放声音?

时间:2013-02-21 22:30:29

标签: firefox-addon fennec

我正在为Firefox Mobile(Fennec)编写一个应该播放声音的扩展程序。使用nsISound,即

var sound = ios.newURI(pathToSoundFile, null, null);
var player = Components.classes["@mozilla.org/sound;1"].createInstance(Components.interfaces.nsISound);
player.play(sound);

在桌面版Firefox上运行良好,但在FF Mobile上不会产生任何声音。我还尝试在网站上附加音频元素,

var audioElement = win.content.document.createElement('audio');
audioElement.setAttribute('id','audio_test');
audioElement.setAttribute('src',pathToSoundFile);
win.content.document.body.appendChild(audioElement);
win.content.document.getElementById('audio_test').play();

有效,但仅限于网站本地存储在我的计算机上(由于安全性 限制,我假设。)

我在安卓4.2的华硕Transformer平板电脑上进行了测试。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

在Fennec上没有实现nsISound。

HTML5音频应该与数据URis一起使用。读取您的音频文件,对其进行base64编码并将其作为src传递,例如"data:audio/ogg;base64," + base64encodeddata