Я разрабатываю расширение firefox, и я хотел бы, чтобы он воспроизводил звук уведомления при возникновении события. Однако, несмотря на следующие инструкции от Play audio from firefox extension's data directory, звук не воспроизводится. Он хранится в моем каталоге данных. Вот мой код:firefox addon SDK не воспроизводит аудио с использованием нового звука
var pageworker = require ("sdk/page-worker");
let { setTimeout } = require("sdk/timers"); //setTimeout is not enabled by default in ff extensions
function playSound(sound){
console.log("playing sound: "+sound);
var soundPlayer = pageworker.Page({
contentURL: data.url("blank.html"),
contentScript: "new Audio('notification-1.mp3').play();console.log('the audio did run')",//This is where it should play, but it doesn't, even if I remove the console.log
//The script does work if I type it into the javascript console, but replace the file name with a file:/// URL
});
setTimeout(function(){soundPlayer.destroy();},5000);//destroy the sound player after 5 seconds
}
но хотя оба console.log «s называют, ни одной никогда не играет. Это как в XPI, так и при использовании cfx.
Любые ошибки в консоли? Являются ли файлы html и mp3 хранятся в одной папке в данных? Если это так, попробуйте с абсолютным путем: '' new Audio ("+ data.url (" notification-1.mp3 ") +"). Play(); "' – willlma
@willlma В консоли не было ошибок и использование data.url не помогло, к сожалению, – JackW
На самом деле, похоже, что сработало (поначалу не по какой-то причине). Благодаря! Не стесняйтесь публиковать его в качестве ответа, и я помечаю его как решение. – JackW