Tl; др
Установка Cordova медиа плагин meteor add cordova:[email protected]
Добавить аудио файлов в общедоступный каталог
Использование /android_asset/www/application/path/to/sound.wav
Если вы посмотрите в этой папке в вашем проекте,
$PROJECT_ROOT/.meteor/local/cordova-build/platforms/android/assets/www/
Вы увидите ваше приложение в Кордове построена это для андроида.
Использование плагина Cordova Media, я попытался использовать путь к файлу /android_asset/www/path/to/sound.wav
безрезультатно.
# Install the cordova media plugin with this command
meteor add cordova:[email protected]
Вместо этого я увидел, что моя папка звуков находилась внутри каталога www, но под каталогом приложений. Таким образом, этот путь к файлу в конечном итоге работает для меня,
/android_asset/www/application/path/to/sound.wav
Вот соответствующий код, который работал для меня.
function getMediaUrl(sound) {
if (device.platform.toLowerCase() === "android") {
return cordova.file.applicationDirectory.replace('file://', '') + 'www/application/' + sound.substr(1);
}
else {
return cordova.file.applicationDirectory.replace('file://', '') + sound.substr(1);
}
}
function playSound(sound) {
return new Media(
getMediaUrl(sound),
function (success) {
// success
},
function (err) {
// error
}
);
}
var test = playSound('/sounds/test.wav');
test.play();
ПРИМЕЧАНИЕ: Я включил мои аудио файлы в общей папке т.е.
$PROJECT_ROOT/public/sounds/test.wav
и на Android, этот путь к файлу переводится на
/android_asset/www/application/sounds/test.wav
Вы пытались: 'new Audio ('/ test.mp3'). Play()'? – stubailo
@stubailo Я сделал это. – Nate
Вам удалось найти что-либо, что не требовало бы другого запроса (http)? – jimmiebtlr