0

サウンドを再生する 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();

これは機能しますが、Web サイトが自分のコンピューターにローカルに保存されている場合に限ります (セキュリティ上の制限のためだと思います)。

Android 4.2 を搭載した Asus Transformer タブレットでこれをテストしました。助言がありますか?

4

1 に答える 1

0

nsISound は Fennec には実装されていません。

HTML5 オーディオは、データ URis で動作する必要があります。オーディオファイルを読み取り、base64 でエンコードして、src として渡します。"data:audio/ogg;base64," + base64encodeddata

于 2013-02-21T23:18:13.057 に答える