Доброго времени суток. Возникла проблема с тегом audio на андроиде. Есть вот такой код:
function Sounds(){
    this.sounds =  {
        chat: {
            ogg: '/sounds/mail.ogg',
            mp3: '/sounds/mail.mp3',
        },
        like: {
            ogg: '/sounds/like.ogg',
            mp3: '/sounds/like.mp3',
        },
        mail: {
            ogg: '/sounds/mail.ogg',
            mp3: '/sounds/mail.mp3',
        },
        view: {
            ogg: '/sounds/view.ogg',
            mp3: '/sounds/view.mp3',
        },
        charms: {
            ogg: '/sounds/visibilitybar_female.ogg',
            mp3: '/sounds/visibilitybar_female.mp3',
        }
    };
    this.Init();
    return this;
};
function CreatePlayer(sounds){
    $('body').append('<audio id="notificationPlayer2"></audio>');
    sounds.$player = $('#notificationPlayer2');
    sounds.player = sounds.$player.get(0);
}
Sounds.prototype.Init = function(){
    this.isPlaying = false;
};
Sounds.prototype.play = function(sound){
    if (this.isPlaying){
        return;
    }
    if (typeof(this.$player) != 'undefined'){
        this.$player.remove();
    }
    if (typeof(this.sounds[sound]) == 'undefined'){
        return;
    }
    CreatePlayer(this);
    this.isPlaying = true;
    var source = '';
    for (var k in this.sounds[sound]){
        source += '<source src="' + this.sounds[sound][k] + '" type="audio/' + k + '">';
    }
    this.$player.html(source);
    this.player.play();
    var _this = this;
    this.$player.unbind('ended');
    this.$player.bind('ended', function(e){
        _this.$player.html('');
        _this.isPlaying = false;
    });
};
var sounds = new Sounds();
socket.on('action_likes', function(){
    sounds.play('like');
});
socket.on('received_mail', function(){
    sounds.play('mail');
});
$(document).on('mail_sended', function(){
    sounds.play('mail');
});
socket.on('chat_message', function(){
    sounds.play('chat');
});
$(document).on('chat_sended', function(){
    sounds.play('chat');
});
socket.on('action_charms', function(){
    sounds.play('charms');
});
Т.е. если приходит событие через websocket, то проигрывается определённый звук. Если работать с компьютера, то всё ок, всё работает. На мобильном звуки не проигрываются. Проверил, сообщение через сокеты приходят, не проигрывается именно звук. Самое интересное, что если добавить кнопку на страницу и повесить на неё обработчик, который запускает sounds.play (т.е. тоже самое, что в обработчике события сокета), то звук воспроизводится. А вот именно по приходу сообщения через сокет, почему-то не хочет воспроизводиться. Может кто-то подскажет, в чём может быть проблема? Заранее спасибо за ответ.