簡體   English   中英

混合應用:音頻無法在Android上播放

[英]Hybrid App: Audio not playing on Android

我正在使用Monaca.mobi構建混合應用程序。 當我為IOS構建應用程序時,一切都很好; 然而,當我為Android設備(Nexus 7)構建它時,音頻確實會通過。 在Monaca調試器中; 但是,音頻工作正常。 有什么關於Android設備,我不知道,也許應用程序的一些權限?

聲音通過某些按鈕點擊調用的angularJS函數播放。 我知道這段代碼是正確的,只是想我可能會分享它:

function DontAsk($scope){
$scope.play = function(){
    var audio = new Audio();
        audio.src = 'sounds/DontEventAsk.mp3';
    audio.play();
}}

感謝您的任何見解。

這里最大的問題是Monaca.mobi應用程序內部使用的瀏覽器是什么? 默認的Android瀏覽器因不支持需要HTML5的較新的編解碼器(如音頻)而臭名昭着。 您可能最好設置應用程序可以觀看的某種標志,然后使用該應用播放聲音而不是依賴瀏覽器。

您的上述代碼僅適用於iOS。 對於Android,無法識別本地音頻文件的路徑。 以下代碼適用於兩種操作系統。 我已經使用內置的應用程序進行了測試。

$scope.play= function(){
    var os = navigator.platform;
    if (os=='iPhone'){
        var url = "sounds/DontEventAsk.mp3";
    }
    else{
        var url = getPhoneGapPath() + "sounds/DontEventAsk.mp3";
    }
    var my_media = new Media(url,
        // success callback
        function() {
            console.log("playAudio():Audio Success");
        },
        // error callback
        function(err) {
            console.log("playAudio():Audio Error: "+JSON.stringify(err));
    });

    // Play audio
    my_media.play();
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM