У меня есть приложение с Ionic4, разработанное игроком, оно разработано с помощью HTMLAudioElement, но при воспроизведении на компьютере с Android 8.1 отображается следующая ошибка:
NotSupportedError: элемент имеет нет поддерживаемых источников.
Ioni c:
Ioni c CLI: 6.10.0 (C: \ Users \ informatica \ AppData \ Roaming \ npm \ node_modules@ionic \ cli) Ioni c Framework: @ ionic / angular 5.2.1 @ angular -devkit / build- angular: 0.901.8 @ angular -devkit / schematics: 9.1.8 @ angular / cli: 9.1.8 @ ionic / angular -toolkit: 2.2.0
Конденсатор:
Конденсатор CLI: 2.2.0 @ конденсатор / сердечник: 2.2.0
Cordova :
Cordova CLI: 9.0.0 (cordova-lib@9.0.1) Платформы Cordova: недоступны Плагины Cordova: нет плагинов в белом списке (всего 1 плагин)
Утилита:
cordova- res: 0.14.0 собственный запуск: 1.0.0
Система:
NodeJS: v12.17.0 (C: \ Program Files \ nodejs \ node.exe) npm: 6.14.4 ОС: Windows 10
ngOnInit(){
const play = document.getElementById('play');
const stop = document.getElementById('pause');
const loader = document.getElementById('loader');
const conect = this.network;
const dialog = this.dialogs;
const audio = new Audio();
audio.src = 'http://104.131.18.232/proxy/supernova?mp=/stream';
audio.load();
play.style.display ="block";
loader.style.display ="none";
stop.style.display= "none";
audio.addEventListener('playing',function(){
loader.style.display ="none";
play.style.display="none";
stop.style.display="block";
});
audio.addEventListener('waiting',function(){
loader.style.display ="block";
play.style.display="none";
stop.style.display="none";
});
stop.addEventListener('click', function(){
audio.pause();
play.style.display = "block";
stop.style.display = "none";
loader.style.display = "none";
});
play.addEventListener('click', function(){
if(conect.type === 'none'){
dialog.alert(
'Radio SuperNova',
'no estás conectado a internet',
);
setTimeout(()=>{
navigator["app"].exitApp();
},2000)
}else{
audio.loop = true;
const data = audio.play();
data.then(function(i) {
// Automatic playback started!
console.log("reproduce i: "+i);
}).catch(function(error) {
console.log("reproduce error "+ error);
audio.play();
// Automatic playback failed.
// Show a UI element to let the user manually start playback.
});
// audio.loop = true;
play.style.display = "none";
stop.style.display = "block";
loader.style.display = "none";
}
});
}